1.4.7. Form校验

属性

如要校验某种类型,要求input存在class为validate,并具备validate属性进行校验规则配置,validate属性值的格式要求是json对象定义字符串(不含 大括号)。 例如:

<input name="username" type="text" class="validate" validate="type:'string',maxLength:20,minLength:6"/> 

在调用jquery扩展插件的formobj、jsonSubmit或validate方法时,会执行校验过程,例如:

$("#validDomain").jsonSubmit(); 
$("#validDomain").formobj();
$("#validDomain").validate();

以下所说的属性,全部都是json字符串的属性。

主属性是验证某一个类型必须存在的属性,副属性可选,不是必须存在的属性。

目前一共可以验证13种类型,再加上最后一种给定自定义正则表达式的自定义验证类型。

name属性或displayName在显示错误信息的时候要用到,但是也可以选择不给出(此时作为输入框的name属性必须存在)

Form校验规则,
类型 主属性和可选值 副属性和可选值(空白表示无)
1、非空 notNull:true或nullable:true  
2、包含空格的非空 notNullWithoutTrim:true  
3、数字(小数) isNumber:true或type:number或type:1或type:2 max或maxValue(必须是数字,如果两个都给出,只使用 前者) min或minValue(必须是数字,如果两个都给出,只使用 前者) integerDigits整数位-数(必须是数字) decimalDigits或dotNumber小数位数(必须是数字,如果 两个都给出,只使用前者)
4、数字(整形) isInteger:true max或maxValue(必须是数字,如果两个都给出,只使用 前者) min或minValue(必须是数字,如果两个都给出,只使用 前者)
5、电子邮件 isEmail:true或type:email  
6、字符串 isWord:true或type:string或type:8或type:9 avoidChar:,将所有你认为是特殊字符的字符放进去,例 如avoidChar:!@#$%^*()。 (如果特殊字符中存在中划线-的话,必须放在第一个) (如果特殊字符中存在脱字符^的话,必须不能放在第一 个)
7、不允许为默认值 isDeaultValue:true、deaultValue:一个给定的值  
8、固定电话号码 type:telephone  
9、手机号码 type:mobilePhone  
10、日期类型(要求格式:yyyy-MM-dd) type:3  
11、日期时间类型(要求格式:yyyy-MM-dd HH:mm:ss) type:4  
12、最大长度 maxLength:一个数字  
13、最小长度 minLength:一个数字  
14、自定义正则表达式 regExp:一个自定义的正则表达式,例如/[\d+]/  
15、自定义校验函数 主属性:func:一个自己定义的函数(必须是全局函数, 可以是匿名函数) (该函数可以没有返回值(js中没有返回值的话默认为 null),返回null或false表示校验未通过)  
16、自定义错误提示 主属性:errorMsg:一个字符串,例如:请输入数字!  
17、js设置校验规则 请看下方的MxtCheckMsg方法