1

I’m using Select2, a great plugin.

HTML:

<select id="fruits" multiple="true">
  <option value=''>All
  <option value='Apple'>Apple
  <option value='Pear'>Pear
  ...

JavaScript:

$('#fruits').select2();

When I select the “All” option, I need to unselect all previously selected options and have only the “All” option selected.

I’ve tried

onChange="$('#fruits').select2('val', ['All']);"

as well as

onChange="$('#fruits').select2('data', ['All']);"

but it does not seem to work for me.

Any clues?

4

4 に答える 4

4

正解です。このコードは私にとって適切に機能しました。

$('#selectId').select2('val',"");
于 2016-05-03T11:11:00.593 に答える
2

このフィドルをコードに追加しました。これを試してください...

ここでフィドル

クリックイベントに基づいています。

$(function() {
    $('#fruits').click(function(e) {
        var selected = $(e.target).val();
        if(selected=='all'){
           $('#fruits > option').prop("selected",false);
           $(e.target).prop("selected",true);
        };
    }); 
});
于 2012-11-01T09:19:14.627 に答える
1

これを使って:

1)選択したアイテムの選択を解除する場合。

$("#fruits option:selected").removeAttr("selected");

2)すべてを選択する場合

 $('#fruits option:[text="All"]').attr('selected', true);
于 2012-11-01T09:19:53.797 に答える
0

これを試して

 $("#fruits option:selected").removeAttr("selected");

 $("#fruits option[value='']").attr("selected","selected");
于 2012-11-01T09:17:40.540 に答える