GraceAdmin 的表单验证来自 GraceUI,您可以方便的完成表单提交时的数据验证工作。
var graceChecker = require("../../graceForUNICloud/graceChecker.js");
1、定义验证规则 var rule = [ {name:"数据键名称", checkType: "验证类型", checkRule: "验证规则", errorMsg: "错误提示信息" }, ...... ]; 如 var rule = [ { name: "nickname", checkType: "string", checkRule: "1,3", errorMsg: "姓名应为1-3个字符" }, { name: "gender", checkType: "in", checkRule: "男,女", errorMsg: "请选择性别" }, //...... ];
1. string 功能 : 字符串及长度检查 规则 : 最小长度,最大长度 如 : 1,3 代表 1到3个字符 2, 代表只检查最短2个字符 2,2 代表等于2个字符 2. int 功能 : 整数及长度检查 规则 : 最小长度,最大长度 如 1,3 3. between 功能 : 数值区间检查 规则 : 最小值,最大值 如 1,3 或 2.5,1000 4. betweenD 功能 : 数值区间检查【整数】 规则 : 最小值,最大值 如 1,3 或 2,1000 5. same 功能 : 等值检查 规则 : 对应的值 6. notsame 功能 : 不等值检查 规则 : 对应的值 7. email 功能 : 邮箱检查 规则 : 无需设置 8. phoneno 功能 : 11位手机号检查 规则 : 无需设置 9. zipcode 功能 : 6位邮编检查 规则 : 无需设置 10. reg 功能 : 正则表达式检查 规则 : 正则表达式内容 如 "^[0-9]{1,2}$" 11. in 功能 : 包含某个字符串的检查 规则 : 字符串集,如:"北京,上海" 12. notnull 功能 : 不为空检查【null 或者 空数组】 规则 : 无需设置 13. samewith 功能 : 等于某个设定的元素的值 [ 常用于密码检查 ] 规则 : 元素的name属性 14. numbers 功能 : 数字组成的字符长度检查 [ 和整数不同,这个规则允许 0123... ] 规则 : 最小长度,最大长度 如 : 1,3 代表 1到3个数字 2, 代表只检查最短2个数字 2,2 代表等于2个数字
1、只要符合对象形式的数据都可以被检查,表单数据在提交时会自动被封装为对象,验证更为方便! 2、一个元素如果要进行多重验证只需为其添加多条验证规则即可;
验证语法及返回值
var checkRes = graceChecker.check(被验证的数据, 验证规则); //验证通过返回true 失败返回 false 并使用 graceChecker.error 属性记录对应的验证错误
formSubmit:function (e) { //定义表单规则 var rule = [ {name:"content", checkType : "string", checkRule:"5,", errorMsg:"公告至少6个字符"}, {name:"date", checkType : "string", checkRule:"6,", errorMsg:"请正确填写发布日期"} ]; var formData = e.detail.value; var checkRes = graceChecker.check(formData, rule); if(!checkRes){ uni.showToast({ title: graceChecker.error, icon: "none" }); return ; } // 验证通过 自行编写后续代码 }