设想一个场景:一个表单有多个字段需要验证,当且仅当所有验证都成功时,提交按钮才可用。代码如下:
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));
}
详细代码看附件:)
分享到:
相关推荐
9. **错误提示**:当用户输入不合法时,Flex表单能显示错误信息,指导用户修正问题。 10. **国际化支持**:Flex客户表单范本可轻松支持多语言环境,方便全球用户的使用。 在“FileTransfer”这个文件名中,我们...
标签中的“源码”和“工具”提示我们,这些文件可能是用来学习和实践Flex表单验证的示例代码。通过阅读和分析这些代码,开发者可以更好地理解和应用表单验证机制。 综上所述,Flex的表单验证涉及了多个层面,从...
6. **表单验证**:内置了多种验证规则,如非空验证、长度验证、格式验证等,确保用户输入的有效性。 7. **容器操作**:可以添加、删除、移动和组织表单内的容器,如面板、表格等,帮助用户更好地组织表单结构。 8....
在Flex开发中,表单数据合法性验证是至关重要的一步,它确保用户输入的数据符合应用程序的预期格式和规则,...通过理解上述知识点,我们可以有效地构建健壮的Flex表单应用,提升用户体验并减少因数据问题引发的错误。
在本文中,我们将深入探讨使用Flex构建登录表单的相关知识点。 1. **Flex基础**: Flex提供了MXML和ActionScript 3.0两种主要的编程语言,MXML是一种声明式语言,主要用于UI组件的布局和配置,而ActionScript 3.0...
3. 动态表单的应用场景: - 数据输入表单:根据数据库结构或API响应动态创建输入字段。 - 用户配置界面:允许用户自定义表单布局或选择显示的字段。 - 多语言支持:动态改变表单元素的标签和提示文本。 - 动态验证:...
本教程将详细讲解"Flex from_validator_表单验证"的相关知识点,帮助你理解和掌握表单验证的基本流程和处理方法。 一、表单验证简介 表单验证主要在用户填写并提交表单时进行,通过验证用户的输入,防止无效数据或...
通过这种方式,我们可以高效地实现一个功能完善的表单验证系统,提高用户填写表单时的准确性和效率。 总之,Flex验证器是Flex应用中非常实用的功能之一,它不仅可以简化数据验证的过程,还能显著提高用户的体验。...
5. **事件处理**:在Flex中,验证通常是与用户交互事件(如按键、提交表单等)绑定的,因此验证框架应能方便地集成到事件处理流程中。 6. **可扩展性**:一个优秀的验证框架应该易于扩展,以适应新的验证需求或规则...
1. 表单验证:你可以为`<s:TextInput>`添加`required`属性,确保用户必须填写。还可以通过设置`<s:Form>`的`errorString`属性,提供错误提示信息。 2. 数据绑定:Flex支持强大的数据绑定,可以直接将表单字段与数据...
在Flex应用中,数据验证是确保用户输入正确性的重要一环,特别是在处理表单提交时。非空验证则是验证中最基本的规则,确保用户必须填写某些字段,避免因为空值导致的错误或异常。 本例子提供了在Flex中实现非空验证...
3. **DateValidators**: 用于日期和时间输入的验证,如DateValidator(验证日期格式和范围)。 4. **CustomValidators**: 开发者可以自定义验证逻辑,创建自己的验证组件,满足特定需求。 在提供的...
3. **表单验证**:在Flex中,可以使用Form或FormItem组件来组织用户输入,它们内置了验证功能。当表单提交时,所有关联的验证器会自动运行,若验证失败,则显示错误提示。 4. **错误提示**:验证失败后,Flex提供了...
Flex表单校验组件是基于Adobe Flex开发的一款强大的前端验证工具,它专为构建具有高效数据验证功能的用户界面而设计。在Web应用程序中,表单校验是必不可少的,因为它确保用户输入的数据符合预定义的规则,从而提高...
Flex 内置验证器是 Flex 框架中用于确保用户输入数据有效性的工具,它们提供了多种验证方式,包括实时验证、提交值验证、通过性验证和脚本式验证。这些验证器帮助开发者轻松地检查用户输入,确保数据格式正确且符合...
这些验证组件是基于Adobe Flex框架的Validator功能,能够为表单字段提供实时或提交时的验证,提高用户体验并减少服务器端的压力。 Flex验证组件的核心在于`Validator`类,它允许开发者定义验证规则,并在用户输入...
里面的每一项我都试验过 直接复制到flex就能看到效果
2. **ActionScript编程**:在AS文件中,你需要定义对话框的逻辑,包括打开和关闭对话框的函数,以及处理表单事件,如按钮点击和表单验证。 3. **数据验证**:表单对话框通常包括数据验证机制,确保用户输入符合预设...
在网页开发中,表单验证是一项至关重要的任务,它确保用户输入的数据符合应用程序的要求,从而减少错误信息,提高用户体验,并保护服务器免受恶意攻击。"表单验证.rar"这个压缩包可能包含了一个简单的注册表单的HTML...
Flex图片上传实例是一个基于Flex3开发的前端应用,它提供了用户友好的图形界面,用于上传图片至服务器。这个实例特别适合那些需要在Web应用中集成图片上传功能的开发者。Flex是一种强大的富互联网应用程序(RIA)...