为什么select2-removal事件不会在带有allowClear的select2中触发?

k0p*_*kus 6 javascript jquery jquery-select2

一旦它被清除,我想在我的select2中挂钩一个事件.select2被初始化了allowClear: true.然而事件

$select.on('select2-removed', function(event) {
    console.log(event);
});
Run Code Online (Sandbox Code Playgroud)

使用清除按钮重置select2时不会触发.

Sad*_*dee 13

select2 v4.0.3

$('#smartsearch').on('select2:unselecting', function (e) {
    alert('You clicked on X');
});
Run Code Online (Sandbox Code Playgroud)

对于所有select2选项和事件


HaR*_*ReL 10

对我来说,唯一有效的是'select2:unselect'事件......(在非多选框中)


Baq*_*qvi 6

我想获取有关在删除事件中刚刚删除的元素的数据。以下代码对我有用;

 $('#selector').on('select2:unselect', function (e) {
        var data = e.params.data;           
    });
Run Code Online (Sandbox Code Playgroud)


k0p*_*kus 5

我使用'select2-removed'-event而不是'select2-removing'使用clear按钮时使用它.

至于为什么它没有触发仍然逃避我.


Mag*_*gus 5

根据select2源代码,该clear方法使用事件select2-clearing而不是select2-removing.所以你也应该听这个事件.

select2-clearing并在删除select2-removing触发.被触发后.select2-removed

请记住,clear并不总是触发select2-removed事件.看起来只有在实际从输入中删除元素时才会触发此事件.