1.需要引用form模板
layui.use(['form'], function () { var form = layui.form; });
2.html代碼
<div class="layui-form"> <select name="city" lay-verify="" lay-filter="test" id="select"> <option value="">請選擇一個城市</option> <option value="010">北京</option> <option value="021">上海</option> <option value="0571">杭州</option> </select> </div>
注:當需要動態生成select選項時,如果沒有layui的下拉效果,需要在生成完dom結構之后form.render();一下,重新渲染。這里的form是第1點模板中的form變量。
如果還沒有效果,注意是不是沒有在外層嵌套div.layui-form
3.獲取select值
像平時獲取select值就可以了。例如$("#select").val();
4.select賦值
也是像平時一樣select賦值就行。例如$("#select").val(”010“);
5.select的change事件
需要在select標簽上增加lay-filter="test",test可以隨意命名。
form.on('select(test)', function (data) { //TODO執行自己的代碼 });
注:select(test)里面的test和lay-filter的值一樣即可。
6.遇到的問題
問題描述:在layer彈框中,如果使用parent.layer.open()彈出一個彈框,之后success回調渲染select,select沒有效果。