作者:仇顺嵐 | 来源:互联网 | 2022-02-25 23:15
最近在使用layui前端框架,在使用单选按钮、下拉菜单select、checkbox等控件的时候 往往遇到一些初始化的东西。
有时候会发现,自己动态append进去的代码要不就是没有显示,要不就是初始化默认选中出问题。
以上这些情况进行了测试:
第一种情况:动态append()html代码后没有显示空间的解决方案:
添加
layui.form.render();//重新渲染 可以解决多种没有显示的情况
第二种情况:动态设置默认选中状态没有效果解决方案:
细分为两种情况:
(1)在html页面代码下(没有在layer初始化框架中,即没有在layui.use([], function(){ }) 中进行初始化)
以初始化checkbox默认选中为例:
$('.xxx').attr("checked", true); //注意这里使用的是attr()
layui.form.render(); //重新渲染显示效果
(2)在layui.use(); 初始化中初始化一般这种情况会出现在调用api接口错误之后使用不然checkbox改变状态
layui.use(['form','layer'],function(){
var form = layui.form
layer = parent.layer === undefined ? layui.layer : top.layer,
$ = layui.jquery;
if ($('.xxxx').attr("checked") === "checked") { //判断是否选中
$('.xxxx').prop("checked", true); //设置选中 注意这里使用的是prop(), 这里要是使用了attr()是无效的
} else {
$('.xxxx').prop("checked", false);
}
form.render(); //重新渲染
});
以上这篇layui 动态设置checbox 选中状态的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。