,假设我正在编写一个消息系统。用户可以添加消息(通过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) { ... });
这使用事件委托,将click
事件处理程序附加到document
而不是任何特定元素。
您可以使用jQuery Live方法来处理使用ajax加载的删除。
你能用这个例子发布JavaScript代码吗? 我知道 jQuery 中的 $().live
函数可能非常适合您的需求,因为它会在按钮添加到DOM
时处理它们......例如:
$('.btnRemove').live('click', function(e) { ... });