Jas*_*key 3 javascript jquery jquery-select2
我使用 Select2-4.0.0 和
$gameSelect.select2().on("change",function(e){....}
Run Code Online (Sandbox Code Playgroud)
工作正常。
但是当我将它链接起来(“更改”)时,如下所示:
$gameSelect.select2().off('change').on("change",function(e){....}
Run Code Online (Sandbox Code Playgroud)
事件被触发,但所选项目在 UI 上没有改变。
这是为什么?
看起来 select2-4.0 正在向 select 元素添加自己的更改处理程序,当您说它off('change')也被删除时,这就是原因。
为了解决此类问题,我们有事件名称间距,因此,请为您的处理程序使用命名空间并使用它来删除它们,例如
$('#my-select').select2().off('change.mychange').on('change.mychange', function () {
//your code
});
Run Code Online (Sandbox Code Playgroud)
演示:小提琴