form.js
Form.prototype.doVerify = function (formObj) {
var verify = form.config.verify,
stop = null,
DANGER = 'layui-form-danger',
field = {},
elem = formObj,
verifyElem = elem.find('*[lay-verify]') //获取需要校验的元素
,
formElem = formObj[0] //获取当前所在的form元素,如果存在的话
,
fieldElem = elem.find('input,select,textarea') //获取所有表单域
//开始校验
layui.each(verifyElem, function (_, item) {
var othis = $(this),
ver = othis.attr('lay-verify').split('|');
var tips = '',
value = othis.val();
othis.removeClass(DANGER);
layui.each(ver, function (_, thisVer) {
var isFn = typeof verify[thisVer] === 'function';
if (verify[thisVer] && (isFn ? tips = verify[thisVer](value, item) : !verify[thisVer][0].test(value))) {
layer.msg(tips || verify[thisVer][1], {
icon: 5,
shift: 6
});
//非移动设备自动定位焦点
if (!device.android && !device.ios) {
item.focus();
}
othis.addClass(DANGER);
return stop = true;
}
});
if (stop) return stop;
});
if (stop) {
return false;
} else {
return true;
}
};
save = function(fn){
if(!layui.form.doVerify(jQuery('form'))){
return false;
}
}