今天使用layui的时候表单验证的提示没有了,咱也不知道咋回事儿,咱也不敢问啊!废了老鼻子劲找了半天才找到问题。
下面看一下我实际上想要的layui提示效果,弹出一个框:
但是因为一些小问题,提示框变成介个亚子?更严重的根本就没有?
样式呢???没有了!!!
提示呢???没有了???直接给我提交了。
后来仔细看了好长时间官方文档才找到症结所在[捂脸]
官方文档
先贴出页面源码:
<!--layui-form-->
<form class="layui-form" lay-filter="myFrom">
<div class="layui-form-item">
<label class="layui-form-label">提示:</label>
<div class="layui-input-inline" style="width: 175px;">
<!--lay-verify="required" -->
<input type="text" name="myName" required lay-verify="required" placeholder="请输入" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<div class="layui-input-block">
<!-- lay-submit="" lay-filter=""-->
<button type="submit" lay-submit="" lay-filter="" class="layui-btn">提示</button>
</div>
</div>
</form>
js代码:
<script type="text/javascript">
layui.use(['layer', 'form'], function() {
var layer = layui.layer;
var form = layui.form;
form.on('submit(myFrom)', function(data) {
layer.msg("555");
return false; //阻止表单提交
});
});
</script>
解决问题:
1、form表单的class要有layui-form。
2、input框要有验证【required 】lay-verify=“required”(非空验证)。
3、button按钮要给定一个lay-submit="" lay-filter="",哪怕里面什么也不写。
4、表单监听要给一个return false返回,否则直接提交,会一闪而过。
出现第二张图片的原因就是没有添加第三项内容,并且指定了第二项中的【required 】,如果没有指定【required 】也不会出现验证结果提示。