layui中form表单元素隐藏了仍然会进行校验?

723 阅读1分钟

前言

form表单中,一些元素动态设置隐藏/显示,通过CSS样式(display:none)实现。当元素隐藏后,当点击提交按钮,隐藏的form表单元素,仍然会进行校验。

代码(HTML)

<form class="layui-form" ... >
    ... ...
    <div class="layui-form-item" id="item-server-scanip">
	<label class="layui-form-label">ScanIP:</label>
	<div class="layui-input-block">
	    <input type="text" name="scanIp" placeholder="请填写入ScanIP地址" value="" class="layui-input scanIp" lay-verify="required" >
	</div>
    </div>
    ... ...
</form>

解决方案

如上form表单中的元素,当通过display隐藏之后,点击提交按钮,仍然会进行校验。给隐藏的元素 lay-verify 属性置空,如:lay-verify="";可解决该问题。

关键代码: $('.scanIp').attr('lay-verify','');