layui 表单
1.表单自带校验
lay-verify:是表单验证的关键字
有以下值供选择:
- required (必填项)
- phone(手机号)
- email(邮箱)
- url(网址)
- number(数字)
- date(日期)
- identity(身份证)
- 自定义值
同时支持多条规则的验证:
格式:lay-verify=”验证A|验证B”
如:lay-verify=”required|phone|number”
eg:
<input type="text" name="enname" id="enname" placeholder="请输入" autocomplete="off" class="layui-input" lay-verify="required">
2.表单验证自定义
- 1.在要进行验证的标签中,加入 layui-verify=“自定义”(自定义为自己填写内容)
eg:
<input type="text" name="enname" id="enname" placeholder="请输入" autocomplete="off" class="layui-input" lay-verify="required|enname"> //(name为自定义的内容)
注意:自定义校验名可以与自带规则名同时使用
- 2.在js中书写form.verify()方法对自定义的标签值进行校验
eg:
//表单校验
//校验name与oldName值是否一致
layui.use(['form'], function() {
$ = layui.$;
var form = layui.form;
form.verify({
enname: function(value) {
var oldEnname = $("#oldEnname").val(); //获取旧名称值
var msg = "";
$.ajax({
type: "get",
url: 'http://192.168.25.38:8080/jeesite/f/sys/role/checkEnname',
async:false,//同步提交。不设置则默认异步,异步的话,最后执行ajax
data: {
enname: value,
oldEnname: oldEnname
},
success: function(result) {
msg = result;
},
error: function(error) {
alert(error.status);
}
});
if(msg == "false") {
return "英文名已存在";
}
}
});
});
注意:多个自定义方法间用逗号隔开
eg:
form.verify({
name:function(value){
……
return "";
},
name:function(value){
……
return "";
}
})
注意:如果在外部定义变量,在ajax中获取值给变量,则必须使用同步请求。
因为异步请求最后进行ajax请求,则导致变量无值。