DeselectAll 不适用于 Bootstrap-select

DeselectAll doesn't work for Bootstrap-select

这是我尝试但没有成功的示例。

JsFiddle

我期望的是:单击按钮时所有选项都将取消selected。

我尝试使用 "refresh" 和 "render",但也没有帮助。

 <select class="selectpicker" multiple title="Not changable text" data-count-selected-text="Not changable text">
         <option>Mustard</option>
         <option>Ketchup</option>
         <option>Relish</option>
 </select>

<button id="f1">ggg</button>

$('#f1').click(function(){
   $('.selectpicker').selectpicker('deselectAll');
});

更新:如果 select 关闭,代码将不起作用。如果它是开放的 - 一切都很好

编辑

deselectAllis now fixed

存在错误

您可以使用 val 清空选择:

$('#f1').click(function(){
    $('.selectpicker').selectpicker('val', '');
});

DeselectAll 理论上应该可以完成这项工作,但由于某种原因它没有。(现在可以)

DEMO

我通过关注 code.Try 它得到了解决方案

$("#listID").val('').trigger('change');

除了 Artur Filipiak 回答之外,

如果它对您不起作用,请添加:

$('.selectpicker').selectpicker('refresh');

添加后:

$('.selectpicker').selectpicker('val', '');

它应该看起来像这样:

$('.selectpicker').selectpicker('val', '');
$('.selectpicker').selectpicker('refresh');

这对我有用!

$('.selectpicker option:selected').val('');
$('.selectpicker').selectpicker('deselectAll');

我能够使用以下方法将我的非多选择器重置为 noneSelectedText。如果您更改 noneSelectedText,它甚至可以工作。

$('.selectpicker').selectpicker('val', 'Nothing Selected').selectpicker("refresh");