Select下拉列在JS、Ajax、循环中如何拼接(添加元素)

315 阅读1分钟

 JS:两种方式 一种是直接追加


 $.ajax({
                type: "POST",
                url: "user/getUserPostAndRole.action",
                data: { user_type: user_type},
                async: true,
                dataType: "json",
                success: function (result) {
                    // 格式化字符串eval 这里没用到
                    // var result = eval('('+result+')');
                 
                    // 岗位List
                    var postList = result.postList;
                    //清空
                    $("#user_post").empty();
                    for (var dict = 0; dict < postList.length; dict++) {
                        //添加子元素
                        $("#user_post").append('<option value=' + postList[dict].id + '>' + postList[dict].name + '</option>');
                    }

                }
            });
<select class="form-control m-b" name="user.user_type" id="user_type" onchange="change_user_type()"> 
<option value=''></option>
</select>

第二种方式

 $.ajax({
                type: "POST",
                url: "factory/getGroupList.action",
                async: false,
                dataType: "json",
                success: function (data) {
                    var rows = data.rows;
                    var str = "";
                    for (var i = 0; i < rows.length; i++) {
                        str += '<option value=' + rows[i].purchase_group + '>' + rows[i].purchase_group + '</option>'
                    }
                    $("#role").html(str);// role为selectid
                  
                  
                    $("#role").selectpicker('refresh');//  多选框 刷新select下拉列
                }
            });
 <select class="form-control selectpicker" data-live-search="true" multiple name="user.role" id="role">

 <option value=''></option>

 </select>