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 ;
}
// 验证通过 自行编写后续代码
}