【发布时间】:2012-08-08 09:40:44
【问题描述】:
我使用以下方式加载 Twitter 引导模型 (http://twitter.github.com/bootstrap/javascript.html#modals):
$("#multiple_choice_question").modal();
然后我调用 jQuery 的 .on() even 处理程序来执行更多操作,一旦模型完全加载,但 .on() 函数似乎被调用了两次?
例如,如果我这样做,我会得到两个随机数:
$("#multiple_choice_question").on("shown",function() {
console.log(Math.floor(Math.random() * 101));
});
我怎样才能阻止这种情况?
【问题讨论】:
-
已修复! $("#multiple_choice_question").unbind("shown");
-
你能显示你打电话给
modal()的地方吗:关于用户操作,准备好了吗?仅供参考,如果您的触发器有data-toggle="modal",则不需要调用此modal()。例如,您可以尝试重现 this jsfiddle 中的错误吗? -
Unbind 对我不起作用,使用
.one('shown')而不是.on('shown')注册事件修复了它。
标签: jquery twitter-bootstrap modal-dialog