select2
上のjQueryプラグイン<select>
とmultiple="multiple"
。選択したリストに値をadd追加する必要があります(つまり、すべてのオプションではなく、選択したオプションに、新しいオプションを追加せずに)。
選択したオプションを this で設定できることを知っています。
$("#the_select").select2("val", "the_option_value");
または、複数選択の場合:
$("#the_select").select2("val", ["an_option_value","another_option_value"]);
しかし、他に削除せずに選択したオプションをリストに追加する(つまり、オプションを選択する)方法はありますか?
あなたはこれを使うことができるはずです:
$("#the_select").append($('<option>', {value:"NEWVAL", text: "New Option Text"}));
リストの最後に新しいオプション項目を追加します。
HTH
編集
テイク2 :)-私はこれをselect2ページのchrome dev toolsで試してみました。動作します( "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"));
これは私がそれをする方法です:
$("#the-select")
.val($("#the-select")
.val()
.concat([array_of_existing_values]));
$("#the-select")
.trigger("change");
HTH