Flex&ActionScript表单验证

FLEX,ActionScipript 3.0 正则验证表单

         本文只是给一些初学的朋友看的,  如果技术比较牛的朋友,欢迎指点..!

         本人在学FLEX过程中经常会遇到一些问题,   关于flex的表单验证问题, 网上的文章不少!  大多都是大致介绍了下!  更多的是 验证字符串长度的(StringValidator) ,  验证电话(PhoneNumberValidator),验证日期(DateValidator),和邮件等.  这些都是很实用的!

          但是本人感觉, 还是要有一种更通用的, 就是用正则自己写匹配模式的表单验证.

我在网找了不少!   很少有说这个的!(也许是我没有找到,呵)  这里我一下这个的例子.

虽然有几个FormItem  但是我只写了一个用户名的. 相信如果能看懂的话, 其它的也不是问题.

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="doalert()">
<mx:Script>
 <![CDATA[
  import mx.validators.RegExpValidator;
  import mx.controls.Alert;
  internal function doalert():void {
   Alert.show(uname.text);
  }
 ]]>
</mx:Script>
 <mx:Panel title="用户注册信息" width="359" height="400" x="24" y="37" fontSize="12">
  <mx:Form width="100%" height="100%" horizontalGap="0">
   <mx:FormHeading label="用户资料" width="100%"/>
   <mx:FormItem label="用户名: " width="100%" required="true">
    <mx:TextInput width="100%" id="uname" />
   </mx:FormItem>
   <mx:FormItem label="密码: "  width="100%" required="true">
    <mx:TextInput width="100%" id="pwd" displayAsPassword="true" />
   </mx:FormItem>
   <mx:FormItem label="性别: " width="100%" direction="horizontal">
    <mx:RadioButton groupName="sex" label="男" />
    <mx:RadioButton groupName="sex" label="女" />
   </mx:FormItem>
   <mx:FormItem label="爱好: " width="100%" direction="horizontal">
    <mx:CheckBox label="读书"/>
    <mx:CheckBox label="上网"/>
    <mx:CheckBox label="唱歌" enabled="true"/>
   </mx:FormItem>
   <mx:FormItem label="邮箱 :" width="100%" >
    <mx:TextInput width="100%"/>
   </mx:FormItem>
   <mx:FormItem label="电话 :" width="100%" >
    <mx:TextInput width="100%"/>
   </mx:FormItem>
   <mx:FormItem label="出生年月" width="100%">
    <mx:TextInput width="100%"/>
   </mx:FormItem>
  </mx:Form>
 </mx:Panel> 
 <mx:RegExpValidator source="{uname}" property="text" expression="{'^[a-zA-Z_]\{1\}[a-zA-Z0-9_]\{5,15\}$'}"
   noMatchError ="用户名只能是字母,数字,下划线,开头只能是字母和下划线,6-16位. " />
</mx:Application>

上面的source属性和property属性我就不解释了!  主要就是一个expression和noMatchError ,

 expression是我们要用的正则表达式字符串, 注: 因为它是一个字符串, 所以我们要对其中的 {  ,} , \ 进行转义..   如  \{ ,\} , \\     ...

noMatchError:是出现不匹配情况下提示出来的一个字符串..

 

你可能感兴趣的:(表单,验证,正则,expression,RegExpValidator)