layer.open 下無法獲取select選中的值

問題:我將layer.open 下的content:內容寫在body內,通過onchange事件無法獲取select選中的值

html代碼

<div  style="display: none" id="labeladdBox">
        <form class="form-horizontal" style="margin-top: 50px;">
            <div class="form-group">
                <label class="col-sm-2 control-label no-padding-right">模塊</label>
                <div class="col-sm-6" style="margin-top: 7px">
                    <select name="mid" id="mid" οnchange="checkMokuai()">
                        <option value="0">請選擇模塊</option>
                        {volist name="mlist" id="vo"}
                        <option value="{$vo.id}">{$vo.name}</option>
                        {/volist}
                    </select>
                </div>
                <p class="help-block col-sm-4 red">* 必填</p>
            </div>
            <div class="form-group">
                <label class="col-sm-2 control-label no-padding-right">上級</label>
                <div class="col-sm-6">
                    <select name="pid" id="labelList">
                        <option value="0">根目錄</option>
                    </select>
                </div>
            </div>
            <div class="form-group">
                <label for="lastname" class="col-sm-2 control-label no-padding-right">名稱</label>
                <div class="col-sm-6">
                    <input type="text" class="form-control" id="lastname" name="name" placeholder="請輸入名稱">
                </div>
            </div>
        </form>
        <div style="width: 100%;text-align: center">
            <button type="button" class="layui-btn layui-btn-normal" style="width: 200px;" οnclick="">提交數據</button>
        </div>
    </div>
</body>
    
</html>

js代碼

addLabelmodel = layer.open({
    type: 1,
    skin: 'layui-layer-rim', //加上邊框
    area: ['800px', '640px'], //寬高
    content: $("#labeladdBox").html()
    /*success: function(layero, index){
        // 重新渲染彈層中的下拉選擇框select
        form.render('select');
    }*/

});

解決方法: 將彈框的html到代碼寫在body之外,並且content:後面需要去掉html()

html代碼


</body>
<div  style="display: none" id="labeladdBox">
    <form class="form-horizontal" style="margin-top: 50px;">
        <div class="form-group">
            <label class="col-sm-2 control-label no-padding-right">模塊</label>
            <div class="col-sm-6" style="margin-top: 7px">
                <select name="mid" id="mid" οnchange="checkMokuai()">
                    <option value="0">請選擇模塊</option>
                    {volist name="mlist" id="vo"}
                    <option value="{$vo.id}">{$vo.name}</option>
                    {/volist}
                </select>
            </div>
            <p class="help-block col-sm-4 red">* 必填</p>
        </div>
        <div class="form-group">
            <label class="col-sm-2 control-label no-padding-right">上級</label>
            <div class="col-sm-6">
                <select name="pid" id="labelList">
                    <option value="0">根目錄</option>
                </select>
            </div>
        </div>
        <div class="form-group">
            <label for="lastname" class="col-sm-2 control-label no-padding-right">名稱</label>
            <div class="col-sm-6">
                <input type="text" class="form-control" id="lastname" name="name" placeholder="請輸入名稱">
            </div>
        </div>
    </form>
    <div style="width: 100%;text-align: center">
        <button type="button" class="layui-btn layui-btn-normal" style="width: 200px;" οnclick="">提交數據</button>
    </div>
</div>

js代碼

addLabelmodel = layer.open({
            type: 1,
            skin: 'layui-layer-rim', //加上邊框
            area: ['800px', '640px'], //寬高
            content: $("#labeladdBox")
            /*success: function(layero, index){
                // 重新渲染彈層中的下拉選擇框select
                form.render('select');
            }*/

        });

結果:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章