表单校验扩展validatee

本扩展用于校验用户提交的表单数据的正确性。

引用方法

非内置扩展,需显式引用。

var Validatee = require("validatee");

构造方法

默认使用POST数据作为校验数据,可以传递一个键值对对象作为校验数据。

var Valid = new Validatee(); 
var Valid = new Validatee({name : "anlige"});

支持链式写法的方法列表

name(names)

设置需要校验的表单名,多个名称用逗号分隔。
本方法可运行多次,以对多个表单项校验。
如果使用链式写法,则本方法必须是第一个运行的方法。

default(value)

设置表单值为空时的默认值。

required(value)

表明表单项是否为非空项。

minLength(len)

设置表单值最小长度。

maxLength(len)

设置表单值最大长度。

min(value)

设置表单值的最小值,仅对数字有效。

max(value)

设置表单值的最大值,仅对数字有效。

exp(exp)

设置校验正则。

equal(name)

判断是否同某个表单项的值一样。

numeric(value)

是否要求表单值为数字。

length(len)

是否要求表单值为固定长度。

between(min, max)

判断表单值是否介于两个值之间。

msg(value)

设置校验失败时的异常文本。

check()

校验name方法指定的表单项。返回true/false。

不支持链式写法的方法列表

addRule(names, rule[, msg])

可不使用链式写法,使用本方法设置表单校验规则。

rule的完整支持如下:
"default:value;between:1-2;numeric:true;length:1;min:1;max:2;equal:name1;min-length:5;max-length:10;required:true;default:test"

true可省略,false必须显式说明,例如:
"default:value;between:1-2;numeric;length:1;min:1;max:2;equal:name1;min-length:5;max-length:10;required:false;default:test"

validate([names])

校验names指定的表单项,如果省略names,则校验所有表单项。

属性

exception

校验失败时,可通过本属性获取异常信息,msg方法设置的值影响本属性。

示例

var Validatee = require("validatee");
var Valid = new Validatee(); 
Valid.name("username").minLength(5).maxLength(15);
Valid.name("age").between(1,100);
Valid.name("title").required();
Valid.addRule("contents", "default:内容;maxLength:1024");
Valid.addRule("password", "required;equal:password2");
if(Valid.validate()){
    F.echo("校验通过");
}else{
    F.echo("校验不通过:" + Valid.exception);
}

单条校验

var Validatee = require("validatee");
var Valid = new Validatee(); 
if(!Valid.name("username").minLength(5).maxLength(15).check()){
    return "用户名校验不通过";
}
if(!Valid.name("age").between(1,100).check()){
    return "年龄校验不通过";
}

发表评论评论(0)