gpt4 book ai didi

javascript - 如何将 jquery 事件重新绑定(bind)到通过 ajax 加载的内容,而无需为每个事件/类执行此操作

转载 作者:数据小太阳 更新时间:2023-10-29 04:59:14 26 4
gpt4 key购买 nike

所以我在其中绑定(bind)了这个 jquery-App:

  • 我所有“.btn-delete”元素的“删除功能”
  • 我所有“.btn-add”元素的“添加功能”

等等。在我的 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/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com