例如,假设我正在编写一个消息系统。用户可以添加消息(通过 AJAX),并且在他们的消息旁边有一些按钮。 (编辑、删除、...)
通过加载页面,加载了一些消息。
<div class="message">
<p>blaat</p>
<a href="#" class="btnRemove">Remove</a>
</div>
<div class="message">
<p>blaat</p>
<a href="#" class="btnRemove">Remove</a>
</div>
jQuery 选择器知道这些元素。因为当我执行 jQuery 脚本时它们已经存在。 (文件。准备好) 但是当我添加另一个“消息”时,jQuery 无法处理“删除”链接,因为它是在运行 jQuery 脚本后加载的。
有人能帮帮我吗?提前致谢!
最佳答案
您可以使用live
方法代替bind
(或简写click
)。所以它看起来像:
$('.btnRemove').live('click', function(e) { ... });
这使用事件委托(delegate),click
事件处理程序附加到 document
而不是任何特定元素。
关于javascript - Ajax 加载新按钮,我需要加载新选择器吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5939481/