博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在Flex中用Validator检测数字、字符串、Email.
阅读量:5354 次
发布时间:2019-06-15

本文共 2754 字,大约阅读时间需要 9 分钟。

Validator可以实现信用卡号码格式检测(mx.validators.CreditCardValidator)、货币格式检测(mx.validators.CurrencyValidator)、E-mail格式检测(mx.validators.EmailValidator)等等功能,

下面的范例演示了StringValidator、NumberValidator和EmailValidator的用法。由于这三个类都继承自Validator,因此都拥有requiredFieldError属性,用于自定义没有值的时候的错误信息。但是这三个类拥有更多的错误信息。要检测的值越复杂,需要定义的错误信息就越多,例如EmailValidator,本例中共定义了9个错误信息。

如果不定义错误信息,Flex会显示默认的英文错误信息,这显然也不是我们所需要的。如果想偷懒的话,可以定义几个最可能出现的错误,例如本例的NumberValidator,就没有定义所有的错误信息。
顺便还要说一句的是,NumberValidator可以指定要检测的数字是整数还是实数,这需要用domain属性来指定。同时,它还可以指定千分位分隔符。

 

 

 

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" fontSize="12" width="300" height="200">
<mx:Style> <![CDATA[ .errorTip { fontSize: 12; } ]]> </mx:Style>
 
protected function validatorForm():
void  
  •  <fx:Script> 
    •         <!--[CDATA[ 
    •             import mx.validators.Validator; 
    •             import mx.controls.Alert; 
    •             protected function click():void 
    •             { 
    •                 var vArray:Array = Validator.validateAll([nameV,ageV,sexV,emailV]); 
    •                 if(vArray.length==0) 
    •                 { 
    •                     Alert.show("正确"); 
    •                 } 
    •                 else 
    •                 { 
    •                     Alert.show("出现错误"); 
    •                 } 
    •                  
    •             } 
    •         ]]--> 
    •     </fx:Script> 
 
 
<mx:StringValidator id="nameV" source="{nameTI}" property="text"
minLength="2"
maxLength="5"
requiredFieldError="必须输入姓名!"
tooShortError="姓名过短!"
tooLongError="姓名过长!"
trigger="{btn}" triggerEvent="click"/>
<mx:NumberValidator id="ageV" source="{ageTI}" property="text" domain="int"
minValue="6" maxValue="100"
lowerThanMinError="年龄过小!" exceedsMaxError="年龄过大!"
integerError="年龄必须是整数!" invalidCharError='输入了非数字字符!'
requiredFieldError="必须输入年龄!"
trigger="{btn}" triggerEvent="click"/>
<mx:Validator id="sexV" source="{sexRBG}" property="selectedValue"
requiredFieldError="必须选择性别!"
trigger="{btn}" triggerEvent="click"
listener="{maleRB}"/>
<mx:EmailValidator id="emailV" source="{emailTI}"
property="text"
requiredFieldError="必须输入E-mail"
invalidCharError="E-mail地址中有错误字符。"
invalidDomainError="E-mail地址中的域名不符合规范。"
invalidIPDomainError="E-mail地址中的IP格式域名不符合规范。"
invalidPeriodsInDomainError="域名中的“.”错误。"
missingAtSignError="E-mail地址缺少“@”符号。"
missingPeriodInDomainError="域名中缺少“.”"
missingUsernameError="E-mail地址缺少用户名。"
tooManyAtSignsError="E-mail地址中的“@”符号太多。"
trigger="{btn}" triggerEvent="click"/>
<mx:FormItem label="姓名:" width="200"> <mx:TextInput id="nameTI"/> </mx:FormItem>
<mx:FormItem label="年龄:" width="200"> <mx:TextInput id="ageTI"/> </mx:FormItem>
<mx:FormItem label="性别:" direction="horizontal" width="200">
<mx:RadioButtonGroup id="sexRBG"/>
<mx:RadioButton id="maleRB" groupName="sexRBG" label="男" value="1"/>
<mx:RadioButton id="femaleRB" groupName="sexRBG" label="女" value="0"/> </mx:FormItem>
<mx:FormItem label="E-mail:" width="200"> <mx:TextInput id="emailTI"/> </mx:FormItem>
<mx:Button id="btn" label="提交" />
</mx:Application>

转载于:https://www.cnblogs.com/ada-zheng/archive/2013/01/10/2854970.html

你可能感兴趣的文章
一次JVM内存调优过程
查看>>
设计模式-14-桥接模式
查看>>
Leetcode 473.火柴拼正方形
查看>>
java util - base64转换工具
查看>>
.net中使用JQuery Ajax判断用户名是否存在的方法
查看>>
P3810 【模板】三维偏序(陌上花开)
查看>>
Packmen ( 二分答案 )
查看>>
ubuntu 14.04 samba 安装处理
查看>>
最大值最小化
查看>>
HDOJ 1877
查看>>
JavaScript获取地址栏内容
查看>>
指令篇:磁盘检查和参数的修改___tune2fs
查看>>
浮动以及清除浮动问题 标准文档流
查看>>
java小程序100例
查看>>
利用二维数组实现以下由星号组成的棱形图形的输出。
查看>>
正式入驻博客园
查看>>
PHP高手干货分享:不能不看的50个细节!
查看>>
How to do if the GM MDI cant connect with the software
查看>>
暑假集训之专题----拓扑排序题解
查看>>
Java中快速排序的实现
查看>>