Flex 各种校验:

参考:http://blog.csdn.net/jerry_bj/article/details/5650469

参考正则表达式:http://www.cnblogs.com/feilong3540717/archive/2012/11/21/2780141.html

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
height="517">
<fx:Script>
<![CDATA[
import mx.validators.Validator;
import mx.validators.ZipCodeValidatorDomainType; import spark.events.TextOperationEvent; protected function txt007_changeHandler(event:TextOperationEvent):void
{
if(txt007.text == 'a'){
txt007.errorString = 'a';
}else {
txt007.errorString = 'others';
}
} protected function btn003_clickHandler(event:MouseEvent):void
{
vld010.validate();
} protected function btn002_clickHandler(event:MouseEvent):void
{
var validArray:Array;
validArray = [vld001,vld002];
Validator.validateAll(validArray);
} ]]>
</fx:Script>
<fx:Declarations>
<!-- 将非可视元素(例如服务、值对象)放在此处 -->
<mx:EmailValidator id="vld001" property="text" source="{txt001}"/>
<mx:PhoneNumberValidator id="vld002" property="text" required="false" source="{txt002}"/>
<mx:ZipCodeValidator id="vld003" domain="{ZipCodeValidatorDomainType.US_OR_CANADA}" property="text" required="false" source="{txt003}"/>
<s:NumberValidator id="vld004" property="text" source="{txt004}"/>
<mx:RegExpValidator id="vld005" expression="{'^[1-9]$'}" flags="g" property="text" source="{txt005}"/>
<mx:StringValidator id="vld006" property="text" requiredFieldError="ABC..." source="{txt006}"/>
<mx:EmailValidator id="vld008" source="{txt008}" property="text" triggerEvent="change" />
<mx:EmailValidator id="vld009" source="{txt009}" property="text" trigger="{btn001}" triggerEvent="click" />
<mx:EmailValidator id="vld010" source="{txt010}" property="text" />
</fx:Declarations>
<!--
<![CDATA[
使用flex自身的RegExpValidator控件进行正则表达式校验十分方便,但是需要注意以下几点:
1.必须用{''}将正则表达式括起来。
2.所有的转义符号\都必须写成\\。
3.大括号{}必须加转义符号。
例:
<mx:RegExpValidator id="regExpV" source="{str}" property="text"
flags="g" expression="{'^[1-9](\\d*\\.\\d\{1,2\}|\\d*)$'}" noMatchError="版本形式不合法"/>
]]>
-->
<s:Form x="45" y="43">
<s:FormHeading label="各种验证"/>
<s:FormItem label="email">
<s:TextInput id="txt001"/>
</s:FormItem>
<s:FormItem label="telnum">
<s:TextInput id="txt002"/>
</s:FormItem>
<s:FormItem label="zipcode">
<s:TextInput id="txt003"/>
</s:FormItem>
<s:FormItem label="number">
<s:TextInput id="txt004"/>
</s:FormItem>
<s:FormItem label="regEx">
<s:TextInput id="txt005"/>
</s:FormItem>
<s:FormItem label="string">
<s:TextInput id="txt006"/>
</s:FormItem>
<s:Button id="btn002" label="统一进行验证" click="btn002_clickHandler(event)"/>
</s:Form>
<s:Form x="300" y="43">
<s:FormHeading label="errorString"/>
<s:FormItem label="errorS">
<s:TextInput id="txt007" change="txt007_changeHandler(event)"/>
</s:FormItem>
</s:Form>
<s:Form x="300" y="155">
<s:FormHeading label="triggerEvent"/>
<s:FormItem label="email01">
<s:TextInput id="txt008"/>
</s:FormItem>
<s:FormItem label="email02">
<s:TextInput id="txt009"/>
<s:Button label="trigger" id="btn001"/>
</s:FormItem>
<s:FormItem label="email03">
<s:TextInput id="txt010"/>
<s:Button id="btn003" label="valid" click="btn003_clickHandler(event)"/>
</s:FormItem>
</s:Form>
</s:Application>

Flex 各种校验的更多相关文章

  1. 一个flex buider 3 在eclipse下不能编译的问题解决

    今天处理一个遗留的项目:项目使用了flex作为界面,装好flex Builder 3 并添加插件到eclipse,eclipse使用3.7版本. 导入项目,编译,发现编译时候出现 Errors run ...

  2. flex 生命周期 ibm引用

    Flex 本质 提起 Flex 我们不得不追述其发展历史以及两个很重要的名词或者说技术,那就是 Flash 和 Flash Player.Flash 是 Adobe 推出的基于时间轴的交互式矢量图和 ...

  3. Flex Validator的小BUG

    Flex中对同一控件如TextInput进行多种格式校验的情况下,如不注意,可能导致错误信息不显示的BUG,比如 <fx:Array id="validators"> ...

  4. Flex之登录界面

    制作登录框界面 环境搭建:MyEclipse 6.5+Flex Builder 3 Plug-in <?xml version="1.0" encoding="ut ...

  5. StringMVC 中如何做数据校验

    步骤一:引入四个jar包 步骤二:注册类型转换器 <context:component-scan base-package="cn.happy.controller"> ...

  6. OpenCASCADE Expression Interpreter by Flex & Bison

    OpenCASCADE Expression Interpreter by Flex & Bison eryar@163.com Abstract. OpenCASCADE provide d ...

  7. 登录(ajax提交数据和后台校验)

    1.前台ajax数据提交 <form id="login_form" action="" method="POST"> < ...

  8. Flex 布局教程:语法篇

    作者: 阮一峰 网页布局(layout)是CSS的一个重点应用. 布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性.它对于那些特殊布局非常不方便 ...

  9. Flex 布局教程:实例篇

    该教程整理自 阮一峰Flexible教程 今天介绍常见布局的Flex写法.你会看到,不管是什么布局,Flex往往都可以几行命令搞定. 我的主要参考资料是Landon Schropp的文章和Solved ...

随机推荐

  1. Use View.isInEditMode() in your custom views to skip code when shown in Eclipse

    今天在做自定义ViewGroup中,出现了一下错误提示Use View.isInEditMode() in your custom views to skip code when shown in E ...

  2. CSS盒模型和margin重叠

    在 CSS 中,width 和 height 指的是内容区域的宽度和高度.增加内边距.边框和外边距不会影响内容区域的尺寸,但是会增加元素框的总尺寸.(div的实际占用尺寸变打了) 但: 一旦为页面设置 ...

  3. 【BZOJ3524/2223】[Poi2014]Couriers 主席树

    [BZOJ3524][Poi2014]Couriers Description 给一个长度为n的序列a.1≤a[i]≤n.m组询问,每次询问一个区间[l,r],是否存在一个数在[l,r]中出现的次数大 ...

  4. hibernate---联合主键关联

    被主导方wife有两个主键: package com.bjsxt.hibernate; import javax.persistence.Entity; import javax.persistenc ...

  5. WebRequestManager对象的使用

    WebRequestManager可以喝WebRequest对象一起使用. WebRequestManager对象的add_completedRequest方法,可以用来处理所有WebRequest对 ...

  6. 静态方法List

    public class Country { public static List<Country> CountryList = new List<Country> { new ...

  7. 2、手把手教你Extjs5(二)项目中文件的加载过程

    上一节中用sencha工具自动创建了一个项目,并且可以在浏览器中查看.现在我们来看看js类加载过程.如下图所示: 1、首先:浏览器中输入 localhost:1841 ,调用 index.html; ...

  8. Laravel 目录结构分析

    根目录结构 /app/bootstrap/public/vendorartisancomposer.jsonserver.php 1./app 整个Laravel 目录中最需要我们注意的地方,包含设置 ...

  9. iOS开发之监听键盘高度的变化 分类: ios技术 2015-04-21 12:04 233人阅读 评论(0) 收藏

    最近做的项目中,有一个类似微博中的评论转发功能,屏幕底端有一个输入框用textView来做,当textView成为第一响应者的时候它的Y值随着键盘高度的改变而改变,保证textView紧贴着键盘,但又 ...

  10. 中国产品众筹NO.1诞生

    中国产品众筹NO.1诞生 淘宝众筹打响新拐点之战 http://bbs.taobao.com/catalog/thread/508895-317240623.htm?spm=1.7274553.199 ...