【发布时间】:2015-08-16 02:29:56
【问题描述】:
我有一个使用 select2 的多选小部件。我通过 AJAX 加载选项,一切正常。
但是,我在选项中添加了一个可点击的“编辑”图标,因为它们显示在“删除”图标旁边的选定项中。我已经将它连接到一个模态表单,它通过 AJAX 编辑项目。编辑成功后,我显然想更新 select2 字段中的选定选项以匹配此。有没有办法用select2以这种方式编辑选定的选项?
我已经尝试编辑标签并在选项上执行 .trigger('change') 但它没有做任何事情。我还查看了 select2 文档中的编程访问示例,但它们似乎更多地是关于选择已经存在的选项,而不是编辑选项本身的“文本”。
任何帮助表示赞赏。
这就是我设置 select2 小部件的方式:
function formatFlavorSelection(flavor) {
var $flavor = $(
'<span class="glyphicon glyphicon-pencil" onClick="editFlavorSelection(' + flavor.id + ', event);"></span><span>' + flavor.text + '</span>'
);
return $flavor;
};
$(".select2-flavor").select2(
ajax: {
url:url,
dataType: 'json',
delay: 250,
data: function (params) {
return {
q: params.term // search term
};
},
processResults: function (data, page) {
var resultData = [];
data.forEach(function(entry) {
resultData.push({ id: entry.id, text: entry[dataName]})
});
return {
results: resultData
};
},
cache: true
},
minimumInputLength: 0,
templateSelection = formatFlavorSelection
);
【问题讨论】:
-
你能展示一些你所做的代码吗?
标签: jquery ajax jquery-select2