Добавление значений в множественный выбор с помощью jQuery select2
я использую select2
плагин jQuery на <select>
С multiple="multiple"
. Мне нужно добавить значения в выбранном списке (т. е. не ко всем параметрам, а к выбранным параметрам, без добавления новой опции).
Я знаю, что могу установить выбранные параметры с этой:
$("#the_select").select2("val", "the_option_value");
или, для множественных выборов:
$("#the_select").select2("val", ["an_option_value","another_option_value"]);
однако, есть ли способ добавить выбранные параметры в списке (т. е. сделать выбранную опцию) без удаления остальных?
2 ответов
вы должны иметь возможность использовать это:
$("#the_select").append($('<option>', {value:"NEWVAL", text: "New Option Text"}));
Он будет добавлять новый элемент в конец списка.
HTH
редактировать
Возьмите 2:) - я пробовал это в Chrome dev tools на странице select2. Он работает (я добавил " WA " и .
var selectedItems = $("#the_select").select2("val");
selectedItems.push("NEWITEMVAL"); // I used "WA" here to test.
$("#the_select").select2("val", selectedItems);
или как один лайнер:
$("#the_select").select2("val", $("#the_select").select2("val").concat("NEWITEMVAL"));
вот как я это делаю:
$("#the-select")
.val($("#the-select")
.val()
.concat([array_of_existing_values]));
$("#the-select")
.trigger("change");
HTH