[英]Select2 deselect all values
我希望單擊一下取消選擇所有值,而不單獨使用每個id
。
我擺弄了一會兒,但這只取消了第一個值。 有什么建議?
這是我嘗試取消選擇的方式:
$( "#mybutton" ).click(function() {
$("select").select2('val', '')
});
$("select").val('').change();
這就是全部:) http://jsfiddle.net/6hZFU/78/
說明:當您更改任何輸入的值或通過JavaScript瀏覽器選擇時,不會觸發該更改的更改事件(這是規范所說的)。
當您觸發更改事件時,select2將趕上並反映select的新值。
試試這個:
$('select').select2({
placeholder: "select me"
});
$("#mybutton").click(function () {
$("select").each(function () { //added a each loop here
$(this).select2('val', '')
});
});
在這里演示
如果使用Select2版本4.0,則需要使用新語法:
$("select").val(null).trigger("change");
$('#destinatariMail').val("-1").trigger("change");
這樣您就可以取消選擇已經“即時”插入的標記選項。
如果您想使用Select2 v4 api清除多個多選下拉列表,這里有一個簡單的方法:
$("li.select2-selection__choice").remove();
$(".select2").each(function() { $(this).val([]); });
不關注下拉列表並清除“select”和“Select2”元素;)
我嘗試了上述解決方案,但它對我不起作用。
這是一種破解,你不必trigger change.
$("select").select2('destroy').val("").select2();
要么
$("select").each(function () { //added a each loop here
$(this).select2('destroy').val("").select2();
});
試試這個,它運作得很好。
$('#form-search-amenities > option').prop("selected", false);
$("li.select2-selection__choice").remove();
#form-search-amenities
應該替換為<select>
下拉列表的ID。
如果有人對Select2本機配置解決方案感興趣( 沒有單獨的按鈕 )。
截至編寫時(select2 v 4),Select2可以添加一個按鈕來清除多選。 不需要<option></option>
解決方法來顯示占位符:
$('#my-select').select2({
placeholder: "Select something",
allowClear: true
});
從文檔中 。
你需要使用你的select類( select2_single )
例:
$('#button_clear').click(function ()
{
$('.select2_single').select2('val','');
});
Debes usar la clase de tus select
EJ:
$('#button_clear').click(function ()
{
$('.select2_single').select2('val','');
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.