layui中的switch开关,能够去显示当前的状态,是否是启用还是禁用。当时如果当前记录的某个值没有进行填写,这行记录就不能被启用。并且页面上也要让他不能进行操作。
直接上代码:
// 页面状态栏事件监听 form.on('switch', function (data) { var swithcData = data; var id = data.value;// 获取要修改的ID var state = this.checked ? '0' : '2';// 当前状态值 $.ajax({ url: '/adChannelConfig/editState', data: { "id": id, "state": state }, error: function (data) { console.log(data); layer.msg('数据异常,操作失败!'); }, // 修改失败,请填写对应的参数 success: function (data) { if (data.data) { layer.msg('操作成功!'); } else { layer.msg(data.msg); var em = $(swithcData.othis[0]); swithcData.othis[0].classList.remove('layui-form-onswitch'); em.children('em').text('停用'); } } }); });
当后台发送添加失败的数据过来的时候,走的下面的else,我们把当前DOM对象用一个变量 swithcData 去接收,这个时候去删除到它的class属性。这个是来控制layui的switch的页面显示。
dom中的0里面,需要点击那个0才能实现,而数字型的属性名不能用“.”来获取,故写成[0]。