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執行自己的代碼
});
form.on('select(test)', function(data){
console.log(data.elem); //得到select原始DOM對象
console.log(data.value); //得到被選中的值]
$("#batch").val(data.value)
console.log(data.othis); //得到美化后的DOM對象
});
6.遇到的問題
問題描述:在layer彈框中,如果使用parent.layer.open()彈出一個彈框,之后success回調渲染select,select沒有效果。
發表評論