【问题标题】:give an event to element which is created dynamically给动态创建的元素一个事件
【发布时间】:2013-01-02 21:51:22
【问题描述】:

我正在使用 jQuery 从 CSV 文件中填充数据。

我需要给动态创建的元素一个事件。

现在该事件没有获取动态创建的数据。

【问题讨论】:

    标签: php jquery html dom


    【解决方案1】:

    您可以为此使用 jQuery .on() 功能。

    $(document).on('click', 'div.my_new_dom', function() {
        // do magical things
    });
    

    这将在将新 DOM 添加到文档时自动将其绑定到 jquery。
    查看此链接以获取详细说明。 http://api.jquery.com/on/

    【讨论】:

      【解决方案2】:

      使用.on 将事件绑定到动态添加的元素。

      【讨论】:

        【解决方案3】:

        您可以通过以下两种方式之一:

        您可以将事件添加到正在创建的每个元素(首选)。

        您可以将事件绑定到父元素或文档,并针对新创建的元素类型或类对其进行过滤,以便它也适用于动态创建的元素(正如@phpisuber01 所展示的那样)。


        我认为首选第一个选项的原因是,使用第二个选项,您将单击事件绑定到整个文档。因此,每次您在页面上的任何位置单击(或执行您的事件正在执行的任何操作)时,都必须进行检查以查看单击的元素是否应该触发事件。我不确定它在性能上的差异有多大,但这是需要考虑的。

        【讨论】:

          猜你喜欢
          • 2020-09-29
          相关资源
          最近更新 更多