Java實現layui動態下拉框


layui下拉框的樣式,具體如下代碼:

<div class="form-group form-row">
                        <label class="col-form-label col-lg-4">狀態</label>
                        <div class="col-lg-8">
                             <select class="layui-input" id="StateID" name="StateID"></select>
                        </div>
                    </div>

createSelect方法是根據url創建下拉框
createSelect()三個參數:selectId, url, value
selectId: form表單id url: 查詢下拉框的url value: 設置值

//layui下拉框數據綁定
function LayuiCreateSelect(selectId, url, value) {//value  設置加載完成時所選定的值
    //數據請求
    $.post(url, function (data) {
        //判斷id是否有"#"
        if (selectId.indexOf('#') != 0) {
            selectId = '#' + selectId;
        }
        $(selectId).empty();//清空該元素
        //創建option
        for (var k in data) {
            $(selectId).append("<option value='" + data[k].id + "'>" + data[k].text + "</option>");
        }
        //使用layui下拉框的必要代碼
        layui.use('form', function () {
            var form = layui.form;
            //設置選中值
            if (value != undefined && value != null && value != '') {
                $(selectId).val(value);
            }
            form.render();//重載表單
        });
    });
};

通過createSelect方法綁定下拉框數據,第一個參數是下拉框的id,第二個參數是請求方法路徑,具體如下代碼:
createSelect(“StateID”, “selectServlet”);

創建一個類:SelectVo,具體如下代碼:

public class SelectVo {
    private int id;
    private String text; 

    public int getId() {return id;} 
    public void setId(int id) {this.id = id;}
    public String getText() {return text;}
    public void setText(String text) {this.text = text;}
    
    public SelectVo(int id, String text) {
        super();
        this.id = id;
        this.text = text;
    }
}

下列代碼就是在的完整代碼:

//下拉框
    private void selectState(HttpServletRequest request, HttpServletResponse response) throws IOException {
        //獲取數據庫數據
        StateDao statedao = new StateDaoImpl();
        List<State> state = statedao.findAll();
        
        List<SelectVo> selectState = new ArrayList<SelectVo>();
        SelectVo select = new SelectVo(0, "---請選擇---");
        selectState.add(select);
        
        for (State states : state) {
            select = new SelectVo(states.getStateID(), states.getStateName());
            selectState.add(select);
        }
        
        JSONArray json = JSONArray.fromObject(selectState);
        response.setContentType("application/json;charset=utf-8");
        PrintWriter writer = response.getWriter();
        writer.println(json);
    }

 

---------------------------------------------------------------------------------------------------------------------------------------------------感謝觀看!期待您的下次光臨!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM