Javascript 为什么使用allowClear在select2中不触发select2删除事件?
我想在我的网站上挂起一个事件,一旦它被清除。select2是用Javascript 为什么使用allowClear在select2中不触发select2删除事件?,javascript,jquery,jquery-select2,Javascript,Jquery,Jquery Select2,我想在我的网站上挂起一个事件,一旦它被清除。select2是用allowClear:true初始化的。然而这件事 $select.on('select2-removed', function(event) { console.log(event); }); 使用清除按钮重置select2时不会触发。我在使用清除按钮时使用的是'select2-removed'-事件,而不是'select2-removing' 至于它为什么不触发,我仍然不明白。根据select2源代码,clear方法使用
allowClear:true
初始化的。然而这件事
$select.on('select2-removed', function(event) {
console.log(event);
});
使用清除按钮重置select2时不会触发。我在使用清除按钮时使用的是
'select2-removed'
-事件,而不是'select2-removing'
至于它为什么不触发,我仍然不明白。根据select2源代码,
clear
方法使用事件select2 clearing
而不是select2 removing
。所以你也应该听听这个事件
select2 clearing
和select2 removing
在删除之前被触发<代码>选择2已删除在之后触发
请记住,
clear
并不总是触发select2 removed
事件。看起来只有从输入中删除元素时才会触发此事件。对我来说,唯一有效的是'select2:unselect'
事件。。。(在非多重选择框中)选择2 v4.0.3
$('#smartsearch').on('select2:unselecting', function (e) {
alert('You clicked on X');
});
对于所有的,我想获取关于元素在移除事件中被移除的数据。下面的代码为我工作
$('#selector').on('select2:unselect', function (e) {
var data = e.params.data;
});
如果您使用的是4或更高版本,请使用
$('#id').on('select2:unselecting', function (e) {
alert('You clicked on X');
});
低于4版本
$('#id').on('select2-removing', function (e) {
alert('You clicked on X');
});
确保对于4或更高版本,它是选择2:unselecting冒号(:)少于4个版本,选择2删除(连字符)@Jatt.net Nope。我没有。但一旦我这么做了,我就想,见鬼,我可能会在上面加一个问题来缓解我的痛苦;)作为补充,
取消选择
在删除选择之前激发,取消选择
在删除选择时激发。