作者热门文章
- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
所以我在其中绑定(bind)了这个 jquery-App:
等等。在我的 webapp 的一个 div 中,我异步加载内容,包括我想将“删除”和“添加”功能绑定(bind)到的元素。这些元素也有一个“btn-delete”或“btn-add”类 - 但由于内容是异步加载的,因此事件不会绑定(bind)到它们而不做任何事情。
所以我听说使用可以在异步加载内容后立即触发的 .on('click' ...) 函数,我可以重新绑定(bind)这些函数。但是我必须为我想使用的每个功能都这样做。我不想要。
我想要的是有一个通用函数,将所有以前定义的事件函数重新绑定(bind)到我将它们加载到的 div 容器中的每个元素。
有没有办法做这样的事情:
“将所有事件函数重新绑定(bind)到 div-id xyz 中的异步加载元素”
如果我不必手动将每个函数与每个回调重新绑定(bind),那会让我的生活变得更加轻松。
最佳答案
如果您使用委托(delegate)事件处理,您永远不必重新绑定(bind)。
$('body').on('click', '.btn-delete', function(ev) {
// delete ...
});
这会设置一个事件处理程序,当“点击”事件从任何元素冒泡到正文时,它会随时捕获这些事件。它作用于与给定选择器匹配的元素的任何“点击”。按钮最初是存在的还是动态添加的并不重要。
您不必将处理程序放在 <body>
上元素;它们可以进入任何容器层。
关于javascript - 如何将 jquery 事件重新绑定(bind)到通过 ajax 加载的内容,而无需为每个事件/类执行此操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19593510/
我是一名优秀的程序员,十分优秀!