我通過Javascript,ajax和jquery將多個值加載到Select2元素中。雖然數據加載正常並且可以在加載後訪問,但我無法在Select2元素中設置存儲的數據。通過javascript設置Multiple Select2元素的數據
編輯:我正在使用Select2 v3.5。
我的代碼:
HTML:
<input class="jsData" style="width: 100%" id="select2Data"></input>
的Javascript:
$(".jsData").select2({
ajax: {
minimumInputLength: 4,
contentType: 'application/json',
url: '<%=Url.Action("GetData","Controller")%>',
type: 'POST',
dataType: 'json',
data: function (term) {
return {
sSearchTerm: term
};
},
results: function (data) {
return {
results: $.map(JSON.parse(data), function (item) {
return {
text: item.term,
slug: item.slug,
id: item.Id
}
})
};
}
},
multiple: true
});
所以,這創造了一個選擇二元素在那裏我可以遍歷,並從不同的數據庫和裝載數據我輸入的內容。我還可以訪問使用下面的行中的數據(由用戶輸入的):
$('.jsData').select2('val')
上述線返回一個數組,我可以存儲在數據庫中。我目前的目標是將存儲的數據重新放回到Select2元素中。任何在這件事情上的幫助將是最受歡迎的。
更新:一個相關鏈接,我要完成: https://select2.github.io/examples.html#programmatic
我想設置在選擇二多個元素的例子。但是,區別在於Select2文檔中的示例在加載頁面時帶來了數據,而我將進行訪問以獲取數據。
在選擇二文檔看起來像道具是'processResults',而不是'results'就像你在你的代碼示例展示。 –
我正在使用Select2 v3.5,其中使用了'結果'。據我所知,'processResults'在v4.0及更高版本中使用。 –
我可以使用v3.5工作。4和一個不同的數據源。你能否驗證你的數據源正在返回數據? –