javascript - 监听动态创建的 div 事件

标签 javascript jquery onclick

我发出一些 post 请求来创建一些 div,在这些 div 上我监听点击事件以触发事件。 Leet 以这些新创建的 div '.mydiv' 为例,我不能使用 $('#mydiv').on('click'..) 因为它是动态创建的,所以我使用

$(document).click(".mydiv", function(){
            //triggers some events
        });

但是现在$(this)引用了'document'对象,所以我无法获取被点击的div并触发相关事件。我怎样才能做到这一点?

编辑:这看起来很有趣,因为首先我调用了一个创建这些 div 的函数,而这正是我称之为点击监听器的函数。在这些条件下: $( document ).on( "click", ".mydiv",...) 不起作用。但是当后者直接放在html页面中时,它工作得很好。 (所以至少不是jquery版本问题)

最佳答案

$(document).on("click", ".mydiv", function(){
        //triggers some events
});

http://api.jquery.com/on/

阅读直接事件和委托(delegate)事件部分

//  doc or Parent   |    event   |  dyn. created el 
$(    document    ).on( "click"  ,     ".mydiv",      function(){
        //triggers some events
});

关于javascript - 监听动态创建的 div 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14772900/

相关文章:

javascript - 如何为动态生成的 div 创建 onClick 函数

javascript - jQuery:toggleClass,多个 <td> 元素,只有一个突出显示

javascript - pretty-print JSON 保留属性顺序

javascript - 创建对象后向其添加附加函数

javascript - 用于获取数据的自定义 react Hook 在第二次点击时不会提供数据

javascript - 键值对中的随机变量未解释为变量

javascript - 如何使用jquery在没有iframe的情况下获取body的innerHtml

javascript - react 组件的正确命名规范

javascript - AJAX JQUERY 代码的哪一部分确定输出数据的占位符

javascript - jQuery:在新选项卡/窗口中打开链接时不调用单击处理程序