`
demojava
  • 浏览: 554648 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

flex3 Validator

 
阅读更多
1.简单的验证demo
<?xml version="1.0"?>
<!-- Simple example to demonstrate the Validator class. -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.events.ValidationResultEvent;
private function handleValid(eventObj:ValidationResultEvent):void {
if(eventObj.type==ValidationResultEvent.VALID)    
    submitButton.enabled = true;
else
    submitButton.enabled = false;
}
private function submitForm():void {
Alert.show("Form Submitted!");
}
]]>
</mx:Script>
<mx:Validator id="reqValid" required="true"
source="{fname}" property="text" 
valid="handleValid(event)" invalid="handleValid(event)"/>       
<mx:Panel title="Validator Example" width="100%" height="100%" 
paddingTop="5" paddingLeft="5" paddingRight="5" paddingBottom="5">
<mx:Form>
<mx:Text width="100%" color="blue"
text="Enter a value in the Name field before you can submit. The E-mail field is optional."/>
<mx:FormItem label="Name: " required="true">
<mx:TextInput id="fname" width="100%"/>
</mx:FormItem>
<mx:FormItem label="E-mail address: " required="false">
<mx:TextInput id="email" width="100%"/>
</mx:FormItem>
<mx:FormItem>
<mx:Button id="submitButton" enabled="false" 
    label="Submit" click="submitForm();"/>
</mx:FormItem>
</mx:Form>
</mx:Panel>
</mx:Application>


2.triggerEvent 和 trigger 使用

<mx:ZipCodeValidator id="zipV" 
source="{myZip}" 
property="text" 
trigger="{mySubmit}" 
triggerEvent="click"/>
<mx:TextInput id="myZip"/> 
<mx:Label text="{myZip.errorString}"/>
	<mx:Button id="mySubmit" label="验证"/>  


3.PhoneNumberValidator 验证
类用于验证字符串是否为有效电话号码。有效电话号码包含至少 10 位数字,以及其它格式化字符。
该验证程序不检查电话号码是否为实际有效的电话号码。
<mx:PhoneNumberValidator source="{phone}" property="text" 
        trigger="{myButton}" triggerEvent="click"
        valid="Alert.show('Validation Succeeded!');"/>
 <mx:TextInput id="phone" width="100%"/>
 <mx:Button id="myButton" label="Validate" />


4.EmailValidator 验证
类用于验证字符串中是否有一个 @ 符号,域名中是否有句点,以及顶级域后缀中是否有两个、三个、四个或六个字符。
如果用方括号括住 IP 域名,则 IP 域名是有效的。验证程序不检查域名和用户名是否实际存在。 
<mx:EmailValidator 							
		id="emailV" 
		source="{txtEmail}" 
		property="text"
	    invalidCharError="非法字符"
	    invalidDomainError="非法域"
	    invalidIPDomainError="非法IP域"
	    missingAtSignError="缺少@符"
	    missingPeriodInDomainError="缺少域后缀"
	    missingUsernameError="缺少用户名"
		/>
<mx:TextInput x="74" y="175" width="117" id="txtEmail"/>	


5.自定义验证
package myCompenent
{
	import mx.validators.Validator;						//引用Validator类
    import mx.validators.ValidationResult;				//引用ValidationResult类
	public class myValidators extends Validator
	{
		public function myValidators()					//构造函数
		{
			super();
		}
		private var results:Array;						//定义一个数组,用以存储错误
		//重写验证函数
	    override protected function doValidation(value:Object):Array 
		 {     
            var s:String = value as String;
            results = [];								//清空数组
            results = super.doValidation(value);        //先用继承类中的doValidation方法验证 
            if (results.length > 0)						//如果验证时有错,返回错误信息
                return results;
            if(s.length>6)								//自定义验证,字符长度不超过6
            {
            	//记录出错信息
            	results.push(new ValidationResult(true,"text","StringTooLong","字符长度超过6了"));
            }        
            return results;
        }
	}
}

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:MyComp="myCompenent.*" fontSize="13">
    <MyComp:myValidators id="myVal" 
        source="{txtString}" property="text"   
        listener="{txtString}"  
        />    
    <mx:Panel title="自定义验证组件" width="300" height="200" horizontalAlign="center" verticalAlign="middle">
	    <mx:TextInput id="txtString"/>
	    <mx:Label text="{txtString.errorString}"/>
	    <mx:Button label="验证" click="myVal.validate();"/>    	
    </mx:Panel>
</mx:Application> 

分享到:
评论

相关推荐

    Flex from_validator_表单验证

    3. 配置验证器:使用`from_validator`为每个字段配置验证器,设置相应的验证规则。 4. 触发验证:当用户提交表单时,触发验证过程。如果所有字段都通过验证,表单可以正常提交;否则,显示错误信息并阻止提交。 三...

    郑岩峰,幻想Flex3,源代码6

    Flex3是一种强大的开发工具,由Adobe公司推出,用于构建富互联网应用程序(RIA)。它基于ActionScript3编程语言和Flash Player运行环境,使开发者能够创建具有交互性和动态视觉效果的Web应用。郑岩峰是国内Flex3领域...

    Java+flex使用dom4j读写xml

    环境:MyEclipse6.0.1+Flex3插件版,jdk1.6,tomcat6.0,dom4j1.6.1,lcds.war, 使用技术:1.Java+flex,及其对象的转换。 2.Java方面,使用dom4j对xml进行操作,包括节点的读取,添加,修改,删除。 3.Flex方面...

    FLEX快速入门.zip

    在Flex应用程序中,可以使用validator来确保表单里的字段值满足某些标准。例如,你可以使用validator来确定用户输入有效的电话号码,确定字符串大于最小长度,确定有长编码包含正确的数字。 在典型的client-server...

    flex3+component组件.pdf

    使用ActionScript 3(AS3)编写组件皮肤是Flex开发中的一个高级话题,涉及到组件生命周期、视觉设计、用户交互等多个方面的深入理解。组件生命周期包括组件的创建、初始化、状态变化、渲染以及销毁等重要时刻,...

    flex form 验证(转)

    3. **MXML与验证** `MXML`是Flex的一种声明式语言,用于构建用户界面。在`test2.mxml`和`Test.mxml`这两个文件中,我们可以看到表单组件的声明和验证规则的设置。例如,`&lt;mx:Form&gt;`用于创建表单,`&lt;mx:FormItem&gt;`...

    Flex实现非空验证小例子

    在Flex中,我们可以使用Validator类来创建自定义验证器。首先,你需要创建一个继承自mx.validators.Validator的子类,覆盖validate()方法。在这个方法中,你可以添加你的验证逻辑,比如检查字段是否为空。如果字段为...

    Flex 3 组件实例与应用(2009版)

    ### Flex 3 组件实例与应用(2009版) #### 一、概述 《Flex 3 组件实例与应用》是一本针对初学者学习Adobe Flex 3框架及其组件的指南书籍。这本书由作者Dason编写,内容覆盖了Flex 3中的多种组件及其用法,并通过...

    构建Flex自动验证框架

    1. **验证组件**:Flex提供了多种内置验证组件,如Validator,它可以检查用户的输入是否符合预设规则,例如邮箱格式、数字范围等。开发者可以通过自定义验证规则扩展这些组件。 2. **事件驱动**:Flex验证过程通常...

    flex自动验证组建(插件)

    这些验证组件是基于Adobe Flex框架的Validator功能,能够为表单字段提供实时或提交时的验证,提高用户体验并减少服务器端的压力。 Flex验证组件的核心在于`Validator`类,它允许开发者定义验证规则,并在用户输入...

    flex 表单数据合法性验证

    在Flex中,我们通常使用MX组件库中的Form组件来创建表单,而表单验证则是通过Validator类进行的。 1. **表单组件和验证器**: Flex的MX组件库提供了一系列的表单组件,如TextInput、TextArea、ComboBox等,它们都...

    flex 重写组件

    - 创建非可视化组件(如Formatter、Validator、Effect等)时,只能使用ActionScript。 - 为组件添加日志记录功能时,也需要使用ActionScript。 #### 四、使用ActionScript重写组件的常规步骤 1. **创建基于标记...

    flex3的cookbook书籍完整版dpf(包含目录)

    flex3的cookbook书籍完整版dpf(包含目录),目录是我花了两个多小时自己整理的,希望对大家有帮助。 目录: 第一章.Flex与ActionScript基础(3) 1.1节.用FlexBuilder创建Flex项目 1.2节.用FlexBuilder创建Flex库项目 ...

    Flex入门教程[汇编].pdf

    Flex入门教程汇编.pdf ...3.优化Flex应用程序的性能,包括使用缓存、lazy loading和优化数据库查询等。 本教程旨在帮助初学者快速入门Flex开发,并提供了丰富的实践经验和样例代码,帮助读者快速掌握Flex开发的技能。

    flex 内置验证器

    Flex 内置验证器是 Flex 框架中用于确保用户输入数据有效性的工具,它们提供了多种验证方式,包括实时验证、提交值验证、通过性验证和脚本式验证。这些验证器帮助开发者轻松地检查用户输入,确保数据格式正确且符合...

    Flex数据显示与数据验证

    在Flex中,可以通过内置的验证器类来实现这一目标,这些验证器包括但不限于`CreditCardValidator`、`CurrencyValidator`、`DateValidator`和`EmailValidator`等。 #### 验证器的使用方式 验证器通常被定义在组件的...

    flex-带checkbox的datagrid

    Flex提供了验证框架,可以通过Validator类实现。同时,当出现错误时,应使用错误提示和错误对象来通知用户。 通过以上知识点的应用,你可以创建一个功能完善的、带有复选框的Flex Datagrid,提供给用户高效、直观的...

    Flex基础培训-5-[数据验证

    Flex中的数据验证主要是通过使用各种校验器(Validator)来完成的。校验器是用于特定格式数据验证的组件,以下是一些常用的校验器: 1. 验证信用卡号码:&lt;mx:CreditCardValidator&gt; 2. 验证货币: 3. 验证日期: 4. ...

Global site tag (gtag.js) - Google Analytics