-
千均一发之际,你手一哆嗦,加了几行代码就把问题解决了
//内置规则不同于required特性,不能像required(...)这样自定义消息
//其他内置规则的使用方法和国际化请看源码的config.js文件和complex demo
SMValidator.setLang({
number: '请输入数字',
email: '请输入正确的邮箱格式'
});
数字:
邮件:
-
老板走到你跟前表扬一下,年轻人不错嘛,来来来,这还有一个表单,需要服务端校验,服务端返回失败时你才显示失败的样式
在老板转身离开的时候你有没有想跟上去给他一棒的冲动?但这是你的饭碗,没办法,继续吧少年~~
<input type="text" name="test5">
<script>
//async表示这是异步校验,校验结果手动设置
new SMValidator('form', {
fields: {
test5: {
required: true,
async: '请等待服务端验证'
}
}
});
//forceFlag 强制给表单设置校验结果,1-通过 2-失败
//asyncMessage 校验失败的原因
//还记得教程1的manul吗?用的也是SMValidator.validate()
//模拟50%的机率校验失败
SMValidator.validate('[name="test5"]', {forceFlag: 2, asyncMessage: '服务端验证失败'});
</script>
-
后来老板不按规矩操作,什么都不填直接提交表单,居然把空值也提交了,这个当然还是叫你去处理
//设置submit属性可以拦截表单的提交行为,在所有表单检验成功后手动提交
new SMValidator('form', {
submit: function(valid, form) {
if(valid) form.submit();
}
});
-
到这里你可能会想,校验表单的功能该有的都有了,可以完事了吧。但是老板的需求你是永远捉摸不透的,且看 教程4