`

Flex validator自定义校验 validator校验组件

    博客分类:
  • flex
阅读更多
简单学习了一下 mx 的validator组件 ,以及自定义组件

<mx:StringValidator id="txt_name_string_validator" maxLength="20" minLength="6"   property="text" source="{txt_name}" required="true" requiredFieldError="请输入用户名"
tooLongError="用户名太长,最长为20位."
tooShortError="用户名太短,最短6位."
    trigger="{txt_name}" triggerEvent="click"
/>
<mx:StringValidator id="txt_pwd_string_validator" maxLength="20" minLength="6"  property="text" source="{txt_pwd}" required="true" requiredFieldError="请输入密码"
tooLongError="用户名太长,最长为20位."
tooShortError="用户名太短,最短6位."
trigger="{txt_pwd}" triggerEvent="click"
/>
<validator:AccountValidator id="txt_name_account_validator" accountError="用户名只能输入字母,数字和下划线" property="text" source="{txt_name}"
trigger="{txt_name}" triggerEvent="click"
/>
<validator:PwdValidator id="txt_pwd_pwd_validator" pwdError="密码只能输入字母,数字" property="text" source="{txt_pwd}"
trigger="{txt_pwd}" triggerEvent="click"
/>
---------------------

自定义validator 需要继承Validator类

package com.mjp.validators
{
import mx.validators.ValidationResult;
import mx.validators.Validator;

public class PwdValidator extends Validator
{
private var _pwdError:String ="只能为英文,数字";

public function PwdValidator()
{
super();
}


public function get pwdError():String
{
return _pwdError;
}

public function set pwdError(value:String):void
{
_pwdError = value;
}

override protected function doValidation(value:Object):Array
{
//定义返回值,并初始化
var results:Array;
results = [];

//执行父类的基本数据校验
results = super.doValidation(value);
if(results.length > 0){  //如果校验未通过,则终止继续执行。
return results;
}

//如果校验通过,则执行自定义的校验功能。
//利用正则表达式校验:只能为英文或数字

var regExp1:RegExp = new RegExp("[^A-Za-z0-9]");

//校验
if(regExp1.test(value.toString())){
//如果校验未通过,则生成一个校验结果
var vr:ValidationResult = new ValidationResult(true,null,"pwdError",pwdError);
//把校验结果加入到返回值数组中。
results.push(vr);
}

//返回校验结果
return results;
}
}

}
-----------------
当点击提交按钮时先进行组件验证方法:
private function validateBeforeLogin():Boolean{
var flag:Boolean = true;
var event:ValidationResultEvent = txt_name_string_validator.validate();
//执行校验
if(event.type == ValidationResultEvent.INVALID){
(event.target.source as UIComponent).setFocus();
flag = false;
}
event = txt_name_account_validator.validate();
//执行校验
if(event.type == ValidationResultEvent.INVALID){
(event.target.source as UIComponent).setFocus();
flag = false;
}
event = txt_pwd_string_validator.validate();
//执行校验
if(event.type == ValidationResultEvent.INVALID){
(event.target.source as UIComponent).setFocus();
flag = false;
}
event = txt_pwd_pwd_validator.validate();
//执行校验
if(event.type == ValidationResultEvent.INVALID){
(event.target.source as UIComponent).setFocus();
flag = false;
}
return flag;
}
分享到:
评论

相关推荐

    Struts2自定义校验框架

    要创建一个自定义校验器,需要继承`org.apache.struts2.validator.FieldValidatorSupport`类或者实现`org.apache.struts2.validator.Validator`接口。然后在自定义校验器中重写`validate()`方法,实现具体的校验逻辑...

    自定义校验注解框架(validator)

    自定义注解参数校验框架,根据项目开发中参数校验情况手写一套框架,供大家学习参考使用。可以直接运用在项目中,如果漏洞请留言,小编会第一时间修复,如果好用请给个好评,谢谢。

    golang validator参数校验的实现

    今天在改后台页面,参数校验错误时输出全是英文,使用着很难看懂到底时什么错了 故而决定去做i18n前端国际化. 改的时候踩了很多坑,故而记录一下,顺便记录以下查问题的方式。 效果 从原来的Title is required变为...

    Hibernate validator使用以及自定义校验器注解

    Hibernate Validator 使用及自定义校验器注解 Hibernate Validator 是 Hibernate 提供的一种对 Bean Validation 规范的实现,用于对 Java Bean 中的字段的值进行验证。它提供了一系列的注解来实现参数校验。 ...

    nice-validator前端校验js及demo

    nice-validator前端校验的使用说明,内含demo和js,可以结合我的博客使用,也可前去官网查看API说明。

    vue表单自定义校验规则介绍

    这段代码中,我们使用了Element UI库的`el-form`组件来创建表单,并通过`:rules`属性绑定自定义验证规则。`prop`属性对应表单字段名,用于关联规则。 接着,我们定义了数据和规则: ```javascript data() { var ...

    bootstrapValidator表单校验、更改状态、新增、移除校验字段的实例代码

    主要介绍了bootstrapValidator表单校验、更改状态、新增、移除校验字段,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

    springboot使用Validator校验方式

    Spring Boot 使用 Validator 校验方式 Spring Boot 中使用 Validator 校验方式是一种非常实用的方法,它可以帮助我们轻松地对用户输入进行校验,从而确保数据的正确性和安全性。本文将详细介绍 Spring Boot 如何...

    Spring Validator接口校验与全局异常处理器

    Spring Validator 接口校验与全局异常处理器 Spring Validator 接口校验是 Spring 框架中的一种校验机制,它允许开发者在外部指定某一对象的校验规则。该机制的核心是 Validator 接口,该接口定义了两个方法:...

    vant(ZanUi)结合async-validator实现表单验证的方法

    主要介绍了vant(ZanUi)结合async-validator实现表单验证的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    Hibernate Validator校验框架

    Hibernate Validator 提供了一种标准的方式来校验对象的属性,使得在不同层之间可以共享验证逻辑,减少了代码重复,提高了代码质量。 1.1 背景 在软件开发中,数据验证是一个至关重要的环节,它确保了数据的准确性...

    Vue表单验证插件Vue Validator使用方法详解

    如果内置的验证规则不能满足需求,Vue Validator允许开发者自定义验证规则。只需在Vue实例的`validators`选项中定义新的验证规则,然后在`v-validate`指令中引用即可。 总的来说,Vue Validator通过提供简洁的API和...

    Hibernate Validator校验框架Demo

    Hibernate Validator校验框架Demo基于springmvc

    json-schema-validator:使用 jjv 的自定义 json 模式验证器

    json-schema-validator 使用 jjv 的自定义 json 模式验证器

    vue props对象validator自定义函数实例

    而`validator`是Vue中一个特殊的功能,用于自定义验证props的规则,确保传递给组件的数据满足特定条件。 以下是一个Vue props对象中`validator`自定义函数的实例: ```javascript props: { propA: Number, // 只...

    springmvc的validator数据校验的实现示例代码

    在SpringMVC中,Validator是用来实现数据校验的重要组件。 在SpringMVC中,Validator是基于Hibernate Validator的,Hibernate Validator是Java的数据校验标准之一。SpringMVC使用Hibernate Validator来实现数据校验...

    struts2用户登录实例的validator后台校验

    此外,Struts2的Validator还支持自定义验证器,如果内置的验证规则无法满足需求,可以通过实现`Validator`接口或使用`ValidatorRule`来创建自定义的验证逻辑。 在实际应用中,为了增强安全性,通常会结合Spring ...

    hibernate-validator数据校验jar集合

    包含hibernate-valdator等用于数据校验所需要的基本jar包。

    SpringBoot 使用hibernate validator校验

    当 Hibernate Validator 提供的注解无法满足我们的业务需求时,我们可以通过自定义的方式来实现校验。例如,我们可以创建一个自定义的注解 `@StringMustBe`: ```java @Target(ElementType.FIELD) @Retention...

    springmvc 使用hibernate-validator校验包

    springmvc 使用hibernate-validator校验框架所需的校验包

Global site tag (gtag.js) - Google Analytics