layer.open回显数据select选择默认值
1. 需求分析
如图所示,需要在用户编辑的时候能够回显数据,并且使其能够自动渲染下拉框。
<div class="layui-form-item">
<label class="layui-form-label">用户性别:</label>
<div class="layui-input-block">
<select name="gender" id="gender">
<option value="" >请选择性别</option>
<option value="1">男</option>
<option value="0">女</option>
</select>
</div>
</div>
2.layui的DOM渲染结构图
3.如何实现自动选择?
通过以上的分析结果可以得知,我们只要拿到自己想要选择的内容所在的dd元素并对它触发点击事件,即可实现select加载时自动选择操作。
var select = 'dd[lay-value=' + data.gender + ']';
触发点击事件,实现自动选择,由于我使用的layer.open,需要从子页面中去获取值,所以需要在前面加上layero.find("iframe")[0].contentWindow,layui具体详情使用方法,请参考layui.com官网教程进行学习。
layero.find("iframe")[0].contentWindow.$('#gender')
.siblings("div.layui-form-select").find('dl').find(select).click();
以上能够解决layui回显数据不能够自动选中的问题。