【发布时间】:2021-10-02 17:26:46
【问题描述】:
我正在尝试在单独的输入中显示从 select2 下拉列表中选择的选项,然后从下拉列表中删除该选项。
到目前为止,我一直采用的方法是将下拉菜单设置为正常选择,然后单击,将单击选项的值添加为“选定选项输入”的新选定选项。
当我想从输入中删除选定的选项时,这一直给我带来问题,尽管我无法找到一种有效的方法将删除的选项添加回原始选择并且选择的其他方面有真的很笨拙。
引用 Shark Tank 企业家的话:“必须有更好的方法!”
下面是我正在尝试做的事情的模型以及我正在尝试做的现有代码:
function initCodeSelectTwo() {
$('#codeDropdown').select2({
width: "100%",
ajax: {
url: 'urlOne',
dataType: 'json',
type: 'GET',
data: data
}
})
var codeSelector = $('#codeSelector');
$.ajax({
type: 'GET',
url: 'urlOne' // controller method gets options already assigned to item
}).then((data) => {
var option = new Option(data.Code, data.Code, true, true);
codeSelector.trigger({
type: 'select2: select',
params: {
data: data
},
multiple: true
});
})
}
function UpdateDropdown() {
// using click instead of change because the dropdown has been configured to not close on click
$('#codeDropdown').on('click', 'option', function(event) {
var option = $(this).val();
$('select box option[value="' + option + '"]').remove();
$("#codeInput").append('<option value="' + option + '">' + option + '</option>');
})
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
我无法在 select2 文档中找到任何相关内容,希望能提供任何帮助!
【问题讨论】:
标签: javascript html jquery jquery-select2