var $dataGroups = $(".data-groups");
if ($dataGroups.length > 0){
$dataGroups.each(function (i,e) {
if($(this).attr("data-group") != undefined){
$.ajax({
url: "/dict/listDictsByCode?dictTypeCode="+$(this).attr("data-group"),
success: function (data) {
var html = '';
$(data.data).each(function (index,element) {
html += "<option value='"+element.code+"'>"+element.name+"</option>";
})
$(e).append(html);
form.render('select');
},
error: function () {
console.log("error");
}
})
}
})
}
layui,向select内动态添加option后,下拉选未显示数据,是因为 form 没有自动化渲染。只需要执行layui官方提供的 form.render(type, filter); 方法即可。
参数说明:
- type:表单的type类型,可选。
// 更新全部select标签
form.render('select');
// 更新全部
form.render();
- filter:是 class=“layui-form” 所在元素的 lay-filter=" " 的值。用来对表单完成局部更新。
<!-- html部分 -->
<div class="layui-form" lay-filter="test1">
…
</div>
<div class="layui-form" lay-filter="test2">
…
</div>
// js部分
form.render(null, 'test1'); //更新 lay-filter="test1" 所在容器内的全部表单状态
form.render('select', 'test2'); //更新 lay-filter="test2" 所在容器内的全部 select 状态