我们在前端的开发中有修改这一功能,它是在表单的组件上衍生而来的,有时需要让组件指定特定内容,话不多说,直接上内容:
<div id="hka" class="layui-input-block">
<input checked="" type="checkbox" name="switch" lay-filter="switchTest" lay-skin="switch" lay-text="开启|关闭">
</div>
<div id="hkb" class="layui-input-block">
<input type="checkbox" name="switch" lay-filter="switchTest" lay-skin="switch" lay-text="开启|关闭">
</div>
id:hka是代表渲染结果为true,id:hkb是代表渲染结果为false。两个开关默认都是显示的,当我们得到影响开关内容的值时,可以选择让相反的开关组件移除:
需要渲染假:
$('#hkb').remove();
需要渲染真:
$('#hka').remove();
这里是不能使用.css({"display": "none" });来对组件进行操作,这样做虽然视觉上隐藏了,但在逻辑层面是存在两个相互冲突的开关,因此在后面取开关值会导致冲突或skin丢失。