【发布时间】:2014-04-17 11:53:45
【问题描述】:
我有一个选择 select2,它使用 ajax 搜索来查找结果。我已经这样初始化它了:
Task.ConfigureAssignee = function (objId) {
var sectionID = (Utilities.GetQueryStringParams('subsection') != undefined) ? Utilities.GetQueryStringParams('subsection') : "-1";
$(objId).select2({
placeholder: 'Type names of people...',
minimumInputLength: 3,
multiple: false,
width: '520px',
id: function (obj) {
return obj.ID;
},
ajax: {
type: "POST",
datatype: 'json',
url: "/webservices/globalwebservice.asmx/EventInviteSearch",
data: function (term) {
return JSON.stringify({ q: term, sectionId: sectionID });
},
contentType: 'application/json; charset=utf-8',
results: function (data, page) {
return { results: data.d.SearchResults };
}
},
formatResult: Task.FormatPersonSearchResult,
formatSelection: Task.PersonForSelection
})
}
我想要做的是单击按钮,通过 javascript 将新项目添加到选择中。
我从文档中查看了$("#ddlinput").select2("val", "CA");,但这要求项目已经绑定到 select2。
任何帮助都会很棒。
我想我可能需要使用 initSelection 函数设置输入值并重新创建 select2。我试过这个,但它不起作用。没有错误,但没有任何反应。
【问题讨论】:
-
点击按钮后可以使用append()在select中添加item
-
谢谢,我在哪个元素上调用 append()?您能否详细说明答案,我也希望该元素成为选定的元素
-
您是将 select2 绑定到文本输入还是选择元素?
-
我绑定到文本输入
标签: jquery jquery-select2