近日,接过组内成员的一个表单增加页面,大量的自定义表单验证脚本,其实都大同小异,无非是判定表单元件非空,或者是否符合内容标准。由于我们用的是layui框架,lay-verify完全可以实现这些验证。但奇怪的是,别的页面都是用的lay-verify验证,问他才说,这个页面存在lay-verify验证失效的问题。为了赶进度,所以就自己写了原始的脚本,一坨一堆的。我也尝试调了调,还真是失效了。于是用了网上的一些方法:
1.在form表单内加上class="layui-form"
2.在提交按钮上加上lay-submit=""
3.在想要校验的标签,加上lay-verify="xxx" 在这个属性里,加上想要的值
4.本页面至少要存在以下JS代码:
<script>
layui.use(['form', 'layedit', 'laydate'], function(){
var form = layui.form;
});
</script>
网上的方法,几乎都抄了个遍(其实他之前就已经这样做过了),都不好使。真的官方的代码存在bug?不能啊,别的页面怎么能用呢?!
后来发现,这货抄别的人的代码时,把提交按钮代码放在了</form>外面,造成form.on函数调用时,form一直是undefind(通过debug发现);改正之后立刻生效。
总结:在使用layui框架时,代码书写一定要规范。尽量少写自定义的脚本,能简尽简。