我正在构建一个支持应用程序,它有一些选择框。我正在使用select2。我遇到的问题是,在我目前的构造中,只有当有人在项目select2填写项目后点击了引导选择2时,才会选择相应的项目引导。
目标是使得当有人设置项目select2值时,程序会自动将前导选择框的select2设置为与项目ID相对应的前导。
如果我在项目select2中选择项目1082,它需要在引导选择2处自动设置“J.Johnson”,而不必先点击所述选择框。
即使官方文件(https://select2.org/programmatic-control/add-select-clear-items)达到我设想的解决方案,我也不能表示赞赏。
项目选择onchange函数调用
document.body.classList.add("any_class");
searchLeadsByProjectID函数
$('.select2project').on("change", function() {
var value = $(this).val();
searchLeadsByProjectID(value);
});
ajaxLeadSearch2.php
function searchLeadsByProjectID(id){
$('.select2lead').select2({
ajax: {
type: 'GET',
url: '/modules/support/ajaxLeadSearch2.php',
dataType: 'json',
delay: 250,
data: {
"id": id
},
processResults: function (data) {
return {
results: data,
more: false
};
}
}
});
}
答案 0 :(得分:0)
附加一个新选项,welp。已解决。
function searchLeadsByProjectID(id) {
$.ajax({
type: 'GET',
url: '/modules/support/ajaxLeadSearch2.php',
dataType: 'json',
delay: 250,
data: {"id": id}
}).success(function (data) {
var $leadSelect = $('.select2lead');
for (var index in data) {
var d = data[index];
var newOption = new Option(d.text, d.id, true, true);
$leadSelect.append(newOption).trigger('change');
}
});
}