1

我使用 Bootstrap 选择创建了一个多选选择控件。

默认情况下,我需要显示动态选择的项目。默认情况下,当我在选项 ALL selection ( <option value="All" selected >All</option>) 中进行选择时,它会在 UI 中显示为选中状态。But when do for one option selected its not shows the tick.

演示在这里:https ://jsfiddle.net/sharmilashree/L7wzv5k0/10/

(IE)

<option value="All" selected >All</option>
<option value="EC" selected>EC (Early Childhood)</option>
4

2 回答 2

1

我怀疑这个问题就像你评论的那样,在这里:

$('#myselect').selectpicker().change(function () { toggleSelectAll($(this)); }).trigger('change');

如果你放弃trigger('change')它,它会按预期工作:

https://jsfiddle.net/Twisty/3pfq5u41/

我想我的问题是为什么要触发一个change事件?真的,我认为您只想toggleSelectAll()在选择“全部”值时执行。

也许是这样的:https ://jsfiddle.net/Twisty/3pfq5u41/2/

希望有帮助。

于 2017-01-25T05:43:00.400 回答
0
  1. 错误的事件选择:

代替

$('#myselect').selectpicker().change(function () { toggleSelectAll($(this)); }).trigger('change');

$('#myselect').selectpicker().change(function () { toggleSelectAll($(this)); }).trigger('select');
  1. 还要检查“未定义”。

    if (control.data('allOptionIsSelected') != allOptionIsSelected && typeof(control.data('allOptionIsSelected')) != "undefined") {

你完成了!快乐编码。

于 2017-01-31T07:49:22.303 回答