温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

layui组件checkbox选中取消,无反应,没效果的原因

发布时间:2020-10-21 17:01:22 阅读:2982 作者:Leah 栏目:web开发
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

layui组件checkbox选中取消,无反应,没效果的原因?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

动态的设置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选中取消,无反应,没效果的原因的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI

开发者交流群×