13

with でselect2jQuery プラグインを使用しています。選択したリストに値を追加する必要があります (つまり、すべてのオプションではなく、新しいオプションを追加せずに、選択したオプションに)。<select>multiple="multiple"

私はこれで選択したオプションを設定できることを知っています:

$("#the_select").select2("val", "the_option_value"); 

または、複数選択の場合:

$("#the_select").select2("val", ["an_option_value","another_option_value"]); 

ただし、他のオプションを削除せずに、選択したオプションをリストに追加する (つまり、オプションを選択する) 方法はありますか?

4

2 に答える 2

35

これを使用できるはずです:

$("#the_select").append($('<option>', {value:"NEWVAL", text: "New Option Text"}));

リストの最後に新しいオプション項目が追加されます。

HTH

編集

テイク 2 :) - select2 ページの chrome dev ツールでこれを試しました。動作します(「WA」を追加してWashington登場しました。

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"));
于 2013-06-04T11:12:54.437 に答える