从品牌网站建设到网络营销策划,从策略到执行的一站式服务
layui组件checkbox选中取消,无反应,没效果的原因?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
创新互联长期为数千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为德州企业提供专业的成都网站制作、成都网站建设,德州网站改版等技术服务。拥有十多年丰富建站经验和众多成功案例,为您定制开发。
动态的设置checkbox的选中取消状态,选中状态。
$("input[type='checkbox']").each(function(){ $(this).prop('checked', false); });
这样设置按理来说是会产生效果的,可是结果往往有点出人意料,点击取消全选没有任何的效果,也没有报错。
后来查阅官方文档后找到了原因
再每一次对layui 组件select,checkbox等操作后应该再进行渲染一遍。如下加入:form.render();
$("input[type='checkbox']").each(function(){ $(this).prop('checked', false); }); layui.form.render(); //form.render("checkbox") //两种方式都可以
在打开页面,操作成功。
问题二:如果根据后台的数据想要动态的给checkbox赋值,每次赋值过后,在请求一次,会在原来选中的checkbox中添加新的选中数据,也就是说每一次的操作都在叠加,并没有取消请求之前选中的checkbox.
解决方法,在每一次重新请求之前都把checkbox选中的取消掉,请求成功过后重新匹配值再选中。
请求之前:
$("input[type='checkbox']").each(function(){ $(this).prop('checked', false); }); layui.form.render();
请求之后:
for (var i = 0; i < resdata.length; i++) { $("input[type='checkbox']").each(function(){ if($(this).val()== resdata[i].SensorID){ $(this).prop('checked', true); } }) } layui.form.render();
请求之后重新选中
切记每次操作后都需要form.render();
看完上述内容,你们掌握layui组件checkbox选中取消,无反应,没效果的原因的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!
成都网站建设公司地址:成都市青羊区太升南路288号锦天国际A座10层 建设咨询028-86922220
成都快上网科技有限公司-四川网站建设设计公司 | 蜀ICP备19037934号 Copyright 2020,ALL Rights Reserved cdkjz.cn | 成都网站建设 | © Copyright 2020版权所有.
专家团队为您提供成都网站建设,成都网站设计,成都品牌网站设计,成都营销型网站制作等服务,成都建网站就找快上网! | 成都网站建设哪家好? | 网站建设地图