当通过传入远程网址生成模态时,我无法正确触发shown.bs.modal
。
在以下代码中,hidden.bs.modal
始终有效。
$('#my_modal').on("shown.bs.modal", set_up_modal);
$('#my_modal').on("hidden.bs.modal", tear_down_modal);
$('#my_modal').modal({ remote: target_url });
set_up_modal = function() { console.log('up') };
tear_down_modal = function() { console.log('down') };
我尝试将.on
更改为更像$('body').on("shown.bs.modal", '#my_modal', saa.set_up_modal);
,但这没有产生任何变化(hidden.bs.modal
再次有效)。
我添加了console.log($._data( $('#my_modal')[0], "events" ));
并且可以确认shown
被绑定到该对象,只是没有被调用。
我尝试使用show.bs.modal
代替,这可行但我需要在屏幕上显示我想要对他们做的内容。
答案 0 :(得分:2)
在此处{@ 3}}
找到拉取请求的临时解决方案按照以下方式编辑modal.js文件的第81行已经为我解决了问题,直到提出了拉取请求
- that.$element.find('.modal-dialog') // wait for modal to slide in
+ that.$element // wait for modal to slide in