我有一个bootstrap multiselect下拉框,可以通过AJAX填充。当我从AJAX获得价值时,我无法填充多选下拉列表。我有另一个正常的下拉列表,它使用相同的AJAX函数并填充它。我错过了什么吗?
我确实检查了这个对我不起作用的链接Adding form elements dynamically to Bootstrap multiselect library
这是HTML
var lstValue = "";
<select id='sellstValue" + obj.id + "' class='lstvalue' hidden='hidden'>" + lstValue + "</select>
这是我的AJAX代码
var lstvalue = $('#' + rowId).find('.lstvalue').prop('id');
$.ajax({
cache: false,
url: '@Url.Action("PopulateDropdown", "AdvancedSearch")',
type: "POST",
data: { Field: field }
}).done(function (data) {
console.log(data.value)
var listb = $('#' + lstvalue);
listb.empty();
$.each(data.value, function (index, value) {
listb.append($('<option>', {
value: value,
text: value
}, '<option/>'))
});
console.log($('#' + lstvalue))
});
$('#' + lstvalue).attr('multiple', 'multiple');
$('#' + lstvalue).multiselect();
我检查了console.log的控制台输出($(&#39;#&#39; + lstvalue)),这给了我预期的结果。
答案 0 :(得分:1)
我不确定为什么会这样,但在我的AJAX调用中添加'async:false'有助于解决它。