`
Supanccy2013
  • 浏览: 223756 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

flex验证器1,基本原理

    博客分类:
  • Flex
阅读更多
注:原创作品,分享以供交流学习,转载请注明出处

flex四种验证方式:
1,实时验证。
   应用程序基于每次键盘敲击或鼠标点击来验证输入的内容是否符合要求或正确无误。
2,提交值验证。
   类似实时验证,但不验证每次键盘操作,而是在用户填写完成并提交其输入值验证(
   例如按回车键或tab键更改字段)
3,通过性验证。
   通常由单击按钮触发,这种验证会一次性检查所有表单输入字段,以确保所有输入值都是有效的。
4,脚本式验证
   使用ActionScript动态创建验证器,甚至在多个元素上重用一个验证器。

   在所有的这些方式中,决定何时进行验证是开发人员。如果发现不一致,flex会凸显出问题字段
(以不显著的方式)并提供一个友善的鼠标悬停消息,用以说明问题所在。


<?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" minWidth="955" minHeight="600">
	<s:layout>
		<s:BasicLayout/>
	</s:layout>
	<fx:Declarations>
		<!--
		验证器工作过程如下:
		1,焦点改变,即焦点从一个ui元素转移到另一个ui组件上,可能是鼠标单击按tab键,回车键所致。
		   这时一般会导致输入控件提交数值。
		
		2,提交文本字段中的内容,这里文本字段为空,因此值也为空。
		3,由于triggerEvent默认是valueCommit。验证器被设置为监听text属性的valueCommit事件。
		4,当textInput对象的text属性为空导致验证失败后,将字段突出显示为红色
		-->
		
		<!-- validator非视觉验证组件,必须包含在Declarations组件中
		属性介绍如下:
		source:要验证的页面上的组件的id
		property:被验证的组件的属性,例如input的text属性
		required:true或false,被验证的组件的被验证属性是否对用户是必须填写的。
		enable:true或false,用来标志验证器是否其作用
		requiredFieldError:如果为true,被验证的组件的属性text是必填的,如果用户没有填写,那么
		                   这个属性就是 显示用户自定义的错误提示信息。
		invalid:组件如果没有通过验证器验证后,调用的函数。
		valid:组件通过验证,调用的函数
		listener:验证不通过后,flex会在相应组件上显示错误信息,这个属性就是让开发人员定义在哪一个组件
		         上显示错误信息。默认值是source制定的组件
		trigger:这个属性来决定触发验证器工作的页面上的控件,
		triggerEvent:来制定trigger发生什么事件的时候执行验证器
		-->
		<mx:Validator source="{username}" 
					  property="text" 
					  required="true" 
					  enabled="true"
					  requiredFieldError="名户名是必须填写的"
					  invalid="validator1_invalidHandler(event)"
					  valid="validator1_validHandler(event)"
					  listener="{password}"
					  />
	</fx:Declarations>
	
	<fx:Script>
		<![CDATA[
			import mx.controls.Alert;
			import mx.events.ValidationResultEvent;
			protected function validator1_invalidHandler(event:ValidationResultEvent):void
			{
				Alert.show('用户名称是必须填写的');
			}

			protected function validator1_validHandler(event:ValidationResultEvent):void
			{
				Alert.show('谢谢您,填写用户名');
			}
		]]>
	</fx:Script>
	
	<s:VGroup horizontalCenter="0" verticalCenter="0">
		<s:Label text="用户名:"/>
		<s:TextInput id="username"/>
		<s:Label text="密码:"/>
		<s:TextInput id="password"/>
	</s:VGroup>
</s:Application>
分享到:
评论

相关推荐

    编译原理实验MiniPascal编译器设计 Flex+Bison

    1. **编译器结构**:编译器通常由词法分析器、语法分析器、语义分析器、优化器和目标代码生成器组成。MiniPascal编译器主要关注前两个阶段。 2. **词法分析**:Flex的工作原理,如何定义正则表达式来匹配MiniPascal...

    flex 词法分析器,中英文手册

    Flex是广泛用于构建词法分析器(也称为扫描器或分词器)的开源工具,主要应用于编译器和解释器的开发。...无论是初学者还是经验丰富的开发者,都应该掌握Flex的基本操作和原理,以便在实际项目中发挥它的优势。

    flex安装程序 windows

    文件名“flex-2.5.4a-1.exe”表明这是一个Flex的老版本,但安装过程基本不变。以下是一般的步骤: 1. 下载:首先,你需要从官方网站或者可靠的第三方源下载Flex的Windows版本。这里我们提到的是flex-2.5.4a-1.exe,...

    语法分析flex-2.5.2

    Flex的基本工作原理是基于正则表达式,用户通过编写lex规格文件(通常命名为`.l`或`.ll`文件)来定义各种词法规则。在这些规则中,每一条都关联一个或者多个处理函数,当匹配到特定的文本模式时,就会调用对应的函数...

    flex-messaging-core.jar

    1. **MessageBroker**: 这是Flex消息传递系统的中心,它管理消息的路由,调度和处理。MessageBroker实例化并配置了各种服务,如HTTP、HTTPS、RTMP和WebSocket等通道,以便通过这些通道发送和接收消息。 2. **...

    flex 和 js 交互

    **Flex和JavaScript交互的基本原理** 1. **跨域策略文件**:由于Flash Player的安全限制,Flex应用在与JavaScript交互前需要加载一个跨域策略文件,允许它与不同源的JavaScript进行通信。这个文件通常命名为cross...

    flex 4 tutorial 中文

    此教程涵盖了从服务集成到数据绑定的基本步骤,特别适合那些初次接触Flex 4的新手。 #### 1. 导入服务并绑定数据到应用组件 **创建应用程序** - **环境设置与准备工作**:在开始编写代码之前,确保已经安装了必要...

    flex 超牛的验证码flex 超牛的验证码flex 超牛的验证码

    根据提供的信息,我们可以了解到这份代码主要涉及Flex框架下的一个示例项目,该示例通过一组按钮来模拟一...通过学习本例,开发者可以更好地理解Flex框架的基本用法,包括MXML语法、ActionScript编程以及事件处理机制。

    FLEX资源——FLEX数据绑定专题(中文PDF)

    通过阅读《FLEX数据绑定专题》,开发者将能深入理解Flex数据绑定的工作原理,提高在Flex项目中的开发效率,创建出更加动态和响应式的用户界面。这份资料对于正在学习或已经在使用Flex的开发者来说,无疑是一份极具...

    Flex + Java 最佳实例(附工程)

    1. 如何在Flex中创建基本组件,如按钮、文本框,并设置样式和事件监听。 2. ActionScript与Java数据类型映射,理解AMF的工作原理。 3. 使用BlazeDS或GraniteDS配置和调用Java服务。 4. 如何处理Flex与Java之间的数据...

    flex编译

    在本文中,我们将深入探讨Flex编译过程,包括其基本原理、使用的工具以及如何通过Ant脚本进行自动化编译。 1. **Flex SDK**:Flex开发的基础是Flex Software Development Kit(SDK),这是一个免费的、开源的工具集...

    eclipse flex集成web项目

    1. **Eclipse Flex插件安装**:如何在Eclipse中安装Flex Builder或相关插件,以便支持Flex项目的开发。 2. **Flex项目创建**:如何在Eclipse环境中创建一个新的Flex项目,配置所需的编译器和运行环境。 3. **...

    flex的ftp操作

    1. **FTP协议理解**:首先需要了解FTP的基本原理和工作模式,包括主动模式和被动模式,以及FTP命令如`LIST`(列出目录)、`PUT`(上传文件)、`GET`(下载文件)等。 2. **Flex AS3 API**:在Flex中,FTP操作主要...

    flex in a week

    "Flex in a Week"教程的Day1可能主要介绍了Flex的基础概念、环境搭建、创建第一个Flex项目以及基本组件的使用。通过查看压缩包中的"FlexInAWeek_Day1_Projects",你可以实践这些理论知识,进一步巩固对Flex的理解。...

    去除flex chart 水印方法

    1. **Flex Builder**: - Flex Builder是Adobe公司为Flex SDK提供的集成开发环境(IDE)。 - 它提供了一套完整的工具集用于创建、调试和部署基于Flex框架的应用程序。 - 在试用期间,Flex Builder生成的应用程序会...

    Flex文件上传的组件

    4. **HTTP服务**:文件上传通常涉及到与服务器的交互,因此需要理解HTTP请求的基本原理,如POST方法用于提交数据。在Flex中,可以通过URLLoader类发送HTTP请求,将文件数据发送到服务器。 5. **进度条更新**:为了...

    flex 电子表格 源码

    首先,我们来看Flex电子表格组件的基本结构。它通常由一系列可编辑的单元格组成,支持数据的输入、计算、排序和格式化。在源码中,我们可以看到这些功能的实现主要依赖于ActionScript,它是Flex的编程语言,具备面向...

    Flex-LCDS-Java.rar_LCDS_flex_flex java

    1. **设置环境**:如何配置Flex Builder或者IntelliJ IDEA等IDE来开发Flex项目,以及如何在服务器上部署LCDS。 2. **创建Flex应用**:学习MXML和ActionScript的基本语法,以及如何使用Flex组件库构建UI。 3. **...

    Flex 时间输入框 TimeInputEx

    让我们深入了解一下这个组件及其背后的原理。 首先,`TimeInputEx.as`是ActionScript源代码文件,它定义了TimeInputEx类。在这个类中,开发者可能扩展了NumericStepper的基本功能,以适应时间输入的需求。...

    selenium录制flex

    #### 二、Selenium录制Flex的基本原理 Selenium录制Flex主要是通过Selenium IDE与FlexMonkium等插件的配合来实现的。Selenium IDE是一款基于Firefox的插件,能够帮助用户轻松录制和回放测试用例。而FlexMonkium则是...

Global site tag (gtag.js) - Google Analytics