JQuery Bootstrap Multiselect动态绑定事件处理器

JQuery Bootstrap Multiselect dynamically bind event handler

本文关键字:事件处理 处理器 事件 动态绑定 Bootstrap Multiselect JQuery      更新时间:2023-09-26

我使用JQuery引导多选从这里:https://github.com/davidstutz/bootstrap-multiselect

它的工作完美,但我想动态地添加事件处理程序后,multiselect已经初始化,例如:

$("selector").multiselect();
....
$("selector").bind('onDropdownShown', function(event) {
    ...
}

我可以在插件初始化时添加这样的处理程序(第1行),但对我来说,在代码的另一部分动态地完成它是很重要的。

我自己找到了解决办法。

让我们这样初始化多选:

 $('selector').multiselect({
        onDropdownShow: function(event) {
            $(event.currentTarget).trigger("multiselectshow", event);
        }
    });

其中multiselectshow是一个自定义事件,专门为这种情况声明。

然后,在需要定制反应的文档中,让我们声明这样的事件处理程序:

$(document).on("multiselectshow", function(event) {
     console.log("Success!");
});

该解决方案允许在初始化行之外为任何插件的内置事件实现自定义处理程序,并且是官方文档和Web中描述的唯一方法的替代方案。