问题描述
我正在尝试根据URL中是否存在特定查询字符串来自动打开引导程序模式。我通过在通常点击该模式的按钮上调用trigger('click')来实现此目的:
<a href="" id="openmodal" class="btn btn-primary" data-toggle="modal" data-target="#myModal">Open Modal</a>
$("#openmodal").trigger('click');
模式可以很好地打开,但是问题在于,当使用触发单击打开模式时,通常在打开模式时触发的以下事件不再触发:
$(document).on('show.bs.modal','#myModal',function(e){
// This does not get fired anymore
});
有人知道为什么在模式打开按钮上调用触发器(“ click”)时,不会触发show.bs.modal事件吗?
感谢您的帮助
解决方法
您的事件绑定必须在触发代码之前,如下所示:
$(function() {
// You can also do
// $('#myModal').on('show.bs.modal',function(e) {
$(document).on('show.bs.modal','#myModal',function(e) {
console.info(e);
});
$("#openmodal").trigger('click');
});