`
Archie
  • 浏览: 3193 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

Flex3 表单验证

阅读更多

设想一个场景:一个表单有多个字段需要验证,当且仅当所有验证都成功时,提交按钮才可用。代码如下:

    test.mxml

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" 
	layout="absolute" creationComplete="init()">
	<mx:Panel width="400" height="300">
		<mx:Form>
			<mx:FormItem label="地址" required="true" >
				<mx:TextInput id="address"  />
			</mx:FormItem>
			<mx:FormItem label="电话"  required="true" >
				<mx:TextInput id="phone" />
			</mx:FormItem>			
		</mx:Form>
		<mx:ControlBar horizontalAlign="right">
			<mx:Button id="submit" label="提交" enabled="false"/>
		</mx:ControlBar>
	</mx:Panel>
	
	<mx:Array id="validators">
		<mx:Validator required="true" requiredFieldError="地址不能为空!" source="{address}" property="text" />
		<mx:Validator required="true" requiredFieldError="电话不能为空!" source="{phone}" property="text" />
	</mx:Array>
	
	<mx:Script>
		<![CDATA[
			private var formValidator:FormValidator=new FormValidator();
		
			private function init():void{
				formValidator.addValidators(validators);
				formValidator.failedCallBack=function():void{
					submit.enabled=false;
				};
				formValidator.passedCallBack=function():void{
					submit.enabled=true;
				};
			}
			
		]]>
	</mx:Script>
</mx:Application>

 FormValidator.as

  

public function addValidator( validator : Validator) : void {
        	if(!validators.contains(validator)){
        			validator.trigger=this;
        			validator.triggerEvent=Event.CHANGE;
        			validator.source.addEventListener(FlexEvent.VALUE_COMMIT,onChange);
        			validator.source.addEventListener(Event.CHANGE,onChange);
        		
        			validator.addEventListener(ValidationResultEvent.INVALID,function(event:ValidationResultEvent):void{
        				voteMap[event.target.source]=false;
        				_failedCallBack();
        			});
        			validator.addEventListener(ValidationResultEvent.VALID,function(event:ValidationResultEvent):void{
        				voteMap[event.target.source]=true;        				
			        	refresh();
        			});
        			validators.addItem(validator);
        	}
}
  private function onChange(event:Event):void{
         dispatchEvent(new Event(Event.CHANGE));
  }

 

    详细代码看附件:)

 

  • src.zip (1.5 KB)
  • 下载次数: 716
分享到:
评论
5 楼 tof.j 2009-04-02  
不错,原来Flex还有表单验证。正好可以用上,flex的代码简洁,界面漂亮。用来做表现层就是酷
4 楼 Archie 2009-03-18  
everest668 写道

LZ你好
按照你提供的代码,在mxml文件中提示“调用了可能未定义的方法addValidators”,也就是说actionscript文件中的方法没有被引用到。

这两个文件都放在了flex 项目中 src目录下,请问该如何操作才能正常引用?


你用下载的代码,别copy页面上的。
3 楼 everest668 2009-03-13  
LZ你好
按照你提供的代码,在mxml文件中提示“调用了可能未定义的方法addValidators”,也就是说actionscript文件中的方法没有被引用到。

这两个文件都放在了flex 项目中 src目录下,请问该如何操作才能正常引用?
2 楼 dearmite 2009-03-09  
不错,不错,正填补了,form 验证完之后的处理..
1 楼 wills 2009-03-04  
不错,正是我所需要的~! Flex 中的验证正缺少一个集合验证~!

相关推荐

    flex客户表单范本

    9. **错误提示**:当用户输入不合法时,Flex表单能显示错误信息,指导用户修正问题。 10. **国际化支持**:Flex客户表单范本可轻松支持多语言环境,方便全球用户的使用。 在“FileTransfer”这个文件名中,我们...

    flex form 验证(转)

    标签中的“源码”和“工具”提示我们,这些文件可能是用来学习和实践Flex表单验证的示例代码。通过阅读和分析这些代码,开发者可以更好地理解和应用表单验证机制。 综上所述,Flex的表单验证涉及了多个层面,从...

    FlexForm表单设计器

    6. **表单验证**:内置了多种验证规则,如非空验证、长度验证、格式验证等,确保用户输入的有效性。 7. **容器操作**:可以添加、删除、移动和组织表单内的容器,如面板、表格等,帮助用户更好地组织表单结构。 8....

    flex 表单数据合法性验证

    在Flex开发中,表单数据合法性验证是至关重要的一步,它确保用户输入的数据符合应用程序的预期格式和规则,...通过理解上述知识点,我们可以有效地构建健壮的Flex表单应用,提升用户体验并减少因数据问题引发的错误。

    Flex做的登录表单

    在本文中,我们将深入探讨使用Flex构建登录表单的相关知识点。 1. **Flex基础**: Flex提供了MXML和ActionScript 3.0两种主要的编程语言,MXML是一种声明式语言,主要用于UI组件的布局和配置,而ActionScript 3.0...

    flex动态表单源码

    3. 动态表单的应用场景: - 数据输入表单:根据数据库结构或API响应动态创建输入字段。 - 用户配置界面:允许用户自定义表单布局或选择显示的字段。 - 多语言支持:动态改变表单元素的标签和提示文本。 - 动态验证:...

    Flex from_validator_表单验证

    本教程将详细讲解"Flex from_validator_表单验证"的相关知识点,帮助你理解和掌握表单验证的基本流程和处理方法。 一、表单验证简介 表单验证主要在用户填写并提交表单时进行,通过验证用户的输入,防止无效数据或...

    Flex 验证器简介

    通过这种方式,我们可以高效地实现一个功能完善的表单验证系统,提高用户填写表单时的准确性和效率。 总之,Flex验证器是Flex应用中非常实用的功能之一,它不仅可以简化数据验证的过程,还能显著提高用户的体验。...

    flex验证框架

    5. **事件处理**:在Flex中,验证通常是与用户交互事件(如按键、提交表单等)绑定的,因此验证框架应能方便地集成到事件处理流程中。 6. **可扩展性**:一个优秀的验证框架应该易于扩展,以适应新的验证需求或规则...

    Flex实例,form表单

    1. 表单验证:你可以为`&lt;s:TextInput&gt;`添加`required`属性,确保用户必须填写。还可以通过设置`&lt;s:Form&gt;`的`errorString`属性,提供错误提示信息。 2. 数据绑定:Flex支持强大的数据绑定,可以直接将表单字段与数据...

    Flex实现非空验证小例子

    在Flex应用中,数据验证是确保用户输入正确性的重要一环,特别是在处理表单提交时。非空验证则是验证中最基本的规则,确保用户必须填写某些字段,避免因为空值导致的错误或异常。 本例子提供了在Flex中实现非空验证...

    flex组件之验证组件实例源码

    3. **DateValidators**: 用于日期和时间输入的验证,如DateValidator(验证日期格式和范围)。 4. **CustomValidators**: 开发者可以自定义验证逻辑,创建自己的验证组件,满足特定需求。 在提供的...

    构建Flex自动验证框架

    3. **表单验证**:在Flex中,可以使用Form或FormItem组件来组织用户输入,它们内置了验证功能。当表单提交时,所有关联的验证器会自动运行,若验证失败,则显示错误提示。 4. **错误提示**:验证失败后,Flex提供了...

    Flex表单校验组件

    Flex表单校验组件是基于Adobe Flex开发的一款强大的前端验证工具,它专为构建具有高效数据验证功能的用户界面而设计。在Web应用程序中,表单校验是必不可少的,因为它确保用户输入的数据符合预定义的规则,从而提高...

    flex 内置验证器

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

    flex自动验证组建(插件)

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

    flex导航设计与表单验证

    里面的每一项我都试验过 直接复制到flex就能看到效果

    Flex/AS写的表单对话框

    2. **ActionScript编程**:在AS文件中,你需要定义对话框的逻辑,包括打开和关闭对话框的函数,以及处理表单事件,如按钮点击和表单验证。 3. **数据验证**:表单对话框通常包括数据验证机制,确保用户输入符合预设...

    表单验证.rar

    在网页开发中,表单验证是一项至关重要的任务,它确保用户输入的数据符合应用程序的要求,从而减少错误信息,提高用户体验,并保护服务器免受恶意攻击。"表单验证.rar"这个压缩包可能包含了一个简单的注册表单的HTML...

    Flex图片上传实例

    Flex图片上传实例是一个基于Flex3开发的前端应用,它提供了用户友好的图形界面,用于上传图片至服务器。这个实例特别适合那些需要在Web应用中集成图片上传功能的开发者。Flex是一种强大的富互联网应用程序(RIA)...

Global site tag (gtag.js) - Google Analytics