【发布时间】:2013-01-26 02:10:34
【问题描述】:
我正在向 DOM 动态添加一些元素。我想使用 jQuery 的 .on() 函数来操作这些元素的行为。但不知何故,DOM 并没有为动态添加的元素触发 .on() 事件。
这是显示示例的 JS Fiddle - http://jsfiddle.net/jYQ2D/1/
当我点击“在 HTML 中动态添加”按钮时,它应该显示警告消息,但它没有显示。
知道为什么吗?
【问题讨论】:
我正在向 DOM 动态添加一些元素。我想使用 jQuery 的 .on() 函数来操作这些元素的行为。但不知何故,DOM 并没有为动态添加的元素触发 .on() 事件。
这是显示示例的 JS Fiddle - http://jsfiddle.net/jYQ2D/1/
当我点击“在 HTML 中动态添加”按钮时,它应该显示警告消息,但它没有显示。
知道为什么吗?
【问题讨论】:
通过.on 的委派不是这样工作的。您必须在元素上调用.on,然后使用第二个参数作为委托选择器:
$(document).on("click", "#dyna", function() {
Documentation。另请注意,#dyna 元素只能有一个。
【讨论】: