Javascript 如何使用initSelection设置Select2值?
我正在使用jqueryselect2作为下拉列表。数据是使用JSON格式通过AJAX调用加载的 这是我的剧本:Javascript 如何使用initSelection设置Select2值?,javascript,jquery,jquery-select2,Javascript,Jquery,Jquery Select2,我正在使用jqueryselect2作为下拉列表。数据是使用JSON格式通过AJAX调用加载的 这是我的剧本: $("#sub_lessons").select2({ maximumSelectionSize: 1, placeholder: "Select Sublessons", allowClear: true, multiple:true, ajax: { url: "getData.action?lid="+
$("#sub_lessons").select2({
maximumSelectionSize: 1,
placeholder: "Select Sublessons",
allowClear: true,
multiple:true,
ajax: {
url: "getData.action?lid="+lessonid,
dataType: 'json',
data: function (term, page) {
return {
q: term
};
},
results: function (data, page) {
return { results: data };
}
}
});
我的html代码片段:
<input type="hidden" id="sub_lessons" style="width:300px"/>
但该值尚未设置。我在一些网站上搜索并建议使用initselection。我使用了initselection,但它不起作用。请帮助我如何在按下按钮时将值设置为select2
任何帮助都将不胜感激。试试这样的方法
$('#sub_lessons').select2('val','no');
我试试这个;为我工作。您应该将其添加到initSelection select2:
initSelection: function (element, callback) {
var id = $(element).val();
$.ajax("url/" + id, {
dataType: "json"
}).done(function (data) {
var newOption = new Option(data.title, data.id, true, true);
$('#sub_lessons').append(newOption).trigger('change');
callback({"text": data.title, "id": data.id});
});
},
您的Json是否为id和文本格式?
$('#sub_lessons').select2('val','no');
initSelection: function (element, callback) {
var id = $(element).val();
$.ajax("url/" + id, {
dataType: "json"
}).done(function (data) {
var newOption = new Option(data.title, data.id, true, true);
$('#sub_lessons').append(newOption).trigger('change');
callback({"text": data.title, "id": data.id});
});
},