数据验证
内置Validator类
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
backgroundColor="#FFFFFF" width="550" height="300">
<mx:Validator required="true" source="{fnametxt}" property="text"
trigger="{validatebtn}" triggerEvent="click" listener="{fnametxt}"/>
<mx:Validator required="true" source="{lnametxt}" property="text"
trigger="{validatebtn}" triggerEvent="click" listener="{lnametxt}"/>
<mx:Validator required="true" source="{addresstxt}" property="text"
trigger="{validatebtn}" triggerEvent="click" listener="{addresstxt}"/>
<mx:Validator required="true" source="{citytxt}" property="text"
trigger="{validatebtn}" triggerEvent="click" listener="{citytxt}"/>
<mx:Validator required="true" source="{statetxt}" property="text"
trigger="{validatebtn}" triggerEvent="click" listener="{statetxt}"/>
<mx:ZipCodeValidator required="true" source="{ziptxt}" property="text"
trigger="{validatebtn}" triggerEvent="click" listener="{ziptxt}"/>
<mx:EmailValidator source="{emailtxt}" property="text"
trigger="{validatebtn}" triggerEvent="click" listener="{emailtxt}"/>
<mx:PhoneNumberValidator source="{phonetxt}" property="text"
trigger="{validatebtn}" triggerEvent="click" listener="{phonetxt}"/>
<mx:Panel title="Contact Info" width="500" height="250">
<mx:Form>
<mx:FormItem label="Name" direction="horizontal">
<mx:TextInput id="fnametxt" />
<mx:TextInput id="lnametxt" />
</mx:FormItem>
<mx:FormItem label="Address">
<mx:TextInput id="addresstxt"/>
</mx:FormItem>
<mx:FormItem label="City State, Zip" direction="horizontal">
<mx:TextInput id="citytxt"/>
<mx:TextInput id="statetxt" width="20"/>
<mx:TextInput id="ziptxt" width="50"/>
</mx:FormItem>
<mx:FormItem label="Phone">
<mx:TextInput id="phonetxt"/>
</mx:FormItem>
<mx:FormItem label="Email">
<mx:TextInput id="emailtxt"/>
</mx:FormItem>
<mx:Button id="validatebtn" label="Validate"/>
</mx:Form>
</mx:Panel>
</mx:Application>
使用errorString进行数据验证
如果Flex自带的验证组件无法满足要求,可用ActionScript自定义,errorString属性将以默认的红色边框和包括错误信息显示
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
backgroundColor="#FFFFFF" width="300" height="150">
<mx:Script>
<![CDATA[
private function validate():void{
// check for length of 10
if(myText.text.length < 10){
// assign errorString to TextInput
myText.errorString = "This field requires at least 100 characters";
} else {
// remove errorString
myText.errorString = null;
}
}
]]>
</mx:Script>
<mx:Panel title="Simple AS Validate" width="210" height="75">
<mx:HBox width="100%" height="100%" paddingLeft="3" paddingTop="3">
<mx:TextInput id="myText" width="100"/>
<mx:Button label="Validate" click="validate()" />
</mx:HBox>
</mx:Panel>
</mx:Application>
posted on 2011-03-17 09:22
长春语林科技 阅读(240)
评论(0) 编辑 收藏 所属分类:
flex