layui动态生成的checkbox不显示?

今天做项目的时候,需要动态显示复选框。结果写好了,发现结构里面已经生成,但是没有渲染到页面,一度怀疑layui的坑,因为“隐藏”了。
通过查找资料,发现人家文档里提及了。

更新渲染

有些时候,你的有些表单元素可能是动态插入的。这时 form 模块 的自动化渲染是会对其失效的。虽然我们没有双向绑定机制(因为我们叫经典模块化框架,偷笑.gif) 但没有关系,你只需要执行 form.render(type, filter); 方法即可。

贴代码:

         function setQr() {
          ajax(baseUrl + "请求接口",
            {
              Type: Type      //参数
            }, "post").done(function (res) {
              var html = ""
              for (var i in res) {
                console.log(res[i].name);
                html += `<input type="checkbox" name="like[write]" title="` + res[i].name + `" value="attribute1" lay-filter="textCheck"> 
              `
              }
              $('#prop').html(html)
              form.render();//渲染页面
              form.on('checkbox(textCheck)', function (data) {
                console.log(data.elem); //得到checkbox原始DOM对象
                console.log(data.elem.checked); //是否被选中,true或者false
                console.log(data.value); //复选框value值,也可以通过data.elem.value得到
                console.log(data.othis); //得到美化后的DOM对象
              });
            }).fail(function (err) {

            })
        }
        setQr()
posted @ 2020-12-25 09:44  小茴香  阅读(927)  评论(0编辑  收藏  举报
Live2D