首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Twitter Bootstrap中,如何从关闭模式对话框中解除绑定事件?

问在Twitter Bootstrap中,如何从关闭模式对话框中解除绑定事件?
EN

Stack Overflow用户
提问于 2013-01-22 11:22:29
回答 2查看 18.9K关注 0票数 22

我有一个绑定到隐藏模式对话框的操作的函数。

我使用的代码类似于this问题的公认答案。

代码语言:javascript
复制
$('#myModal').on('hidden', function () {
    // do something…
})

但是,此对话框可能会重新打开以进行编辑,当这种情况发生时,我不一定要运行此代码。有没有办法“解除绑定”函数,使其在对话框关闭时不再运行?我在the documentation里什么都没找到。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-01-22 11:32:04

您可以执行类似于解除绑定所有绑定到模态元素的事件的操作:

解除绑定模式中的所有事件:

代码语言:javascript
复制
/* First option */
$('#myModal').on('hidden', function (e) {
    $(e.currentTarget).unbind(); // or $(this)        
});

/* Second option is to call it directly when needed */
$('#myModal').unbind();

Bootrap模式也有与之绑定的特定事件,因此您还可以指定要解除绑定的事件。

代码语言:javascript
复制
/* Events are 'hidden', 'hide', 'show', 'shown' */
$('#myModal').unbind(/* specific event here */);

如果希望删除与模态内容相关的事件,只需清空$('#myModal').empty()中的元素并适当地解除这些元素的绑定即可。

票数 43
EN

Stack Overflow用户

发布于 2017-01-20 18:19:37

使用:

代码语言:javascript
复制
$('#myModal').off('hidden');

为什么不解除绑定呢?

从jQuery 3.0开始,.unbind()已被弃用。从jQuery 1.7开始,它就被.off()方法所取代,因此不鼓励使用它。

来源:jQuery API。

票数 19
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14451052

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档