本文中以DateValidator为例,首先介绍一下传统的DateValidator用法
<mx:DateValidator id="dateValidator" source="test" formatError="Format error, should be 'YYYY-MM-DD'"/>
<mx:DateField id="test" formatString='YYYY-MM-DD'/>
这种验证方法只适用与一对一,当我们希望只定义一个DateValidator来验证一组DateField时该方法就无能为力了。
下面的代码将介绍如果解决这一问题。
代码:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute">
<mx:Script>
<![CDATA[
import mx.validators.DateValidator;
import mx.events.ItemClickEvent;
import mx.events.ValidationResultEvent;
import mx.validators.ValidationResult;
import mx.controls.Alert;
var testObject:Object=new Object();
private function showDate():void
{
Alert.show(dateFormatter.format(test.selectedDate));
}
private function validateDate(event:FocusEvent, name:String):void
{
if(event.target.text){
dateValidator.source=event.target;
if (dateValidator.validate().type == ValidationResultEvent.INVALID)
Alert.show(name+": "+(DateValidator.validateDate(dateValidator,event.target.text,
new Date().toDateString())[0] as ValidationResult).errorMessage);
else
resultDate.text=dateFormatter.format((testObject['date']));
}
}
]]>
</mx:Script>
<mx:DateValidator id="dateValidator"
formatError="Incorrect formatting string,should be 'YYYY-MM-DD'."
inputFormat="YYYY-MM-DD"
property="text"/>
<mx:DateFormatter id="dateFormatter"
formatString="YYYY-MM-DD"/>
<mx:DateField x="427"
y="168"
id="test"
width="220"
formatString="YYYY-MM-DD"
toolTip="{test.selectedDate}"
editable="true"
change="{testObject['date']=DateField(event.target).selectedDate}"
focusOut="validateDate(event,'DATE')"/>
<mx:Button x="427"
y="258"
label="Show Date"
click="showDate()"/>
<mx:DateField x="427"
y="198"
width="220"
formatString="YYYY-MM-DD"
toolTip="{test.selectedDate}"
editable="true"
change="{testObject['date']=DateField(event.target).selectedDate}"
focusOut="validateDate(event,'DATE1')"/>
<mx:TextInput x="427"
y="228"
width="220"
id="resultDate"/>
<mx:Label x="384" y="170" text="DATE:"/>
<mx:Label x="381" y="200" text="DATE1:"/>
<mx:Label x="374" y="230" text="RESULT:"/>
</mx:Application>
private function sumbit():void
{
//验证信息输入
var addValidators:Array = [sqrValid,sqlyValid,shsjValid,shrValid,syddValid,syrValid,qysjValid];
var error:Array = Validator.validateAll(addValidators);
if(error.length > 0) {
focusManager.setFocus(error[0].target.source);
Alert.okLabel = "确认";
Alert.show(error[0].target.requiredFieldError,"提示",Alert.OK,this.parent as Sprite);
return;
}
分享到:
相关推荐
本教程将详细讲解"Flex from_validator_表单验证"的相关知识点,帮助你理解和掌握表单验证的基本流程和处理方法。 一、表单验证简介 表单验证主要在用户填写并提交表单时进行,通过验证用户的输入,防止无效数据或...
在Flex开发中,表单验证是一项关键任务,它确保用户输入的...通过对`FormValidator.as`、`test2.mxml`和`Test.mxml`的深入研究,开发者可以掌握如何在Flex项目中有效地实施表单验证,提高应用的用户体验和数据质量。
标题中的“构建Flex自动验证框架”指的是在Flex应用程序开发中创建一个自动化验证系统。Flex是一种基于ActionScript的开源框架,用于构建富互联网应用程序(RIA)。自动验证框架是开发者用来确保用户输入数据有效性...
Flex自动验证组件是一种在Flex应用开发中用于数据验证的强大工具,它可以帮助开发者确保用户输入的数据符合预设的规则和格式。这些验证组件是基于Adobe Flex框架的Validator功能,能够为表单字段提供实时或提交时的...
本篇文章将深入探讨Flex中的组件以及数据验证类,帮助你更好地理解和应用这些概念。 首先,Flex组件是构建用户界面的基本单元,它们可以是按钮、文本框、列表等可视化元素。在Flex中,组件主要由MXML和ActionScript...
Flex数据绑定是Adobe Flex应用程序开发中的核心特性,它允许开发者将UI组件的属性与应用程序的数据模型进行连接,实现数据的动态更新和可视化。在Flex中,数据绑定是一种声明性编程方式,极大地简化了用户界面与业务...
通过查看FlexGrocer的源代码,我们可以深入理解Flex4中格式化和验证的实践方法,学习如何在MXML和ActionScript之间进行交互,以及如何利用Flex的验证框架来增强用户体验和数据安全性。 在实际开发中,良好的格式化...
在Flex应用中,验证是非常重要的一环,它确保用户输入的数据符合预设的规则,例如电子邮件格式、数字范围等。通过Validator类,开发者可以轻松地添加验证逻辑到表单组件上,提高用户体验并减少错误。 在Flex3中,你...
5. 实现数据绑定和验证,包括使用BindingUtils类、Validator类和Form类等。 6. 使用Flex Builder开发工具,包括创建新项目、设计用户界面、编写代码和调试应用程序等。 此外,本教程还涵盖了一些高级话题,例如: ...
深入探讨Flex组件的属性系统,包括数据绑定、动态属性和属性监听器等。通过掌握这些技术,可以更灵活地控制组件的状态和行为。 #### 第14章 - Flex Components(Flex组件) 本章将回顾Flex提供的标准组件库,包括...
Symfony对多语言应用有很好的支持,提供了国际化(i18n)和本地化(l10n)功能,方便开发者构建适应不同地区和文化的网站。 8. **广泛的社区与生态系统** Symfony拥有庞大的开发者社区和丰富的第三方库,如...