如何验证单选按钮组?在flex
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何验证单选按钮组?在flex相关的知识,希望对你有一定的参考价值。
如何在flex 3中选择或不选择单选按钮?
如果我的问题是错的,请告诉我有关无线电组验证的任何事情。
答案
只需使用StringValidator:
<mx:StringValidator id="myRadioButtonGroupValidator"
source="{myRadioButtonGroup}"
property="selectedValue"
required="true"/>
另一答案
对于Spark组和RadioButton,工作稍有不同。请参阅下面的示例。
注意:对于HGroup,如示例所示:警告瞄准器将显示错误,但不会显示红色边框。如果将RadioButton本身设置为侦听器,则可能会得到一个难看的结果,如果将FormItem设置为目标,则不会发生任何事情。
<fx:Declarations>
<s:RadioButtonGroup id="myGroup" />
<mx:StringValidator id="vLevel"
required="true"
source="{myGroup}"
property="selectedValue"
minLength="1"
maxLength="80"
listener="{grpLevel}"
/>
</fx:Declarations>
<s:FormItem label="Level">
<s:HGroup id="grpLevel">
<s:RadioButton group="{myGroup}" label="A"/>
<s:RadioButton group="{myGroup}" label="B"/>
<s:RadioButton group="{myGroup}" label="C"/>
</s:HGroup>
</s:FormItem>
另一答案
这是我解决问题的方法。如果有任何错误请留下评论。
<mx:NumberValidator id="radiogroupValidator" source="{radiogroup}" property="selectedValue" allowNegative="false" />
mxml文件中的无线电组源
<mx:RadioButtonGroup id="radiogroup" itemClick="radiochangefunction(event)" selectedValue="-1" />
<mx:RadioButton id="radiobtn1" groupName="radiogroup" label="Send Password to existing EmailId" value="0"/>
<mx:RadioButton id="radiobtn2" groupName="radiogroup" label="Enter new EmailId" value="1"/>
itemClick
功能
public function radiochangefunction(event):void
{
radiogroup.selectedValue=event.currentEvent.selectedValue.toString();
}
最后是验证功能
var isValidradiobutton:Boolean = (Validator.validateAll([radiogroupValidator]).length==0);
另一答案
听听itemClick
的RadioButtonGroup
事件。在处理程序中,使用selection
或selectedValue
属性来了解单击了哪个RadioButton
。
selection
- 返回对所选RadioButton
实例的引用selectedValue
- 返回所选value
的RadioButton
属性(如果已设置)。否则,返回其label
文本。
如果没有选择null
,这两个属性都会返回RadioButton
。
来自livedocs的一个运行示例
<?xml version="1.0"?>
<!-- Simple example to demonstrate RadioButtonGroup control. -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.events.ItemClickEvent;
// Event handler function to display the selected button
// in an Alert control.
private function handleCard(event:ItemClickEvent):void {
if (event.currentTarget.selectedValue == "AmEx") {
Alert.show("You selected American Express")
}
else {
if (event.currentTarget.selectedValue == "MC") {
Alert.show("You selected MasterCard")
}
else {
Alert.show("You selected Visa")
}
}
}
]]>
</mx:Script>
<mx:Panel title="RadioButtonGroup Control Example" height="75%" width="75%"
paddingTop="10" paddingLeft="10">
<mx:Label width="100%" color="blue"
text="Select a type of credit card."/>
<mx:RadioButtonGroup id="cardtype" itemClick="handleCard(event);"/>
<mx:RadioButton groupName="cardtype" id="americanExpress" value="AmEx"
label="American Express" width="150" />
<mx:RadioButton groupName="cardtype" id="masterCard" value="MC"
label="MasterCard" width="150" />
<mx:RadioButton groupName="cardtype" id="visa" value="Visa"
label="Visa" width="150" />
</mx:Panel>
</mx:Application>
以上是关于如何验证单选按钮组?在flex的主要内容,如果未能解决你的问题,请参考以下文章