Ajax加载新按钮,我是否需要加载新的选择器?

时间:2011-05-09 16:01:36

标签: javascript jquery

我们假设我正在编写一个消息系统。用户可以添加消息(通过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脚本时它们已经存在。 (的document.ready) 但是当我添加另一个“消息”时,jQuery无法处理'remove'链接,因为它在运行jQuery脚本后被加载。

有人可以帮帮我吗?提前谢谢!

3 个答案:

答案 0 :(得分:0)

您可以使用live方法代替bind(或简写click)。所以它看起来像:

$('.btnRemove').live('click', function(e) { ... });

这使用事件委派,click事件处理程序附加到document而不是任何特定元素。

答案 1 :(得分:0)

您可以使用jQuery Live方法处理使用ajax加载的删除。

答案 2 :(得分:-1)

你可以用这个例子发布JavaScript代码吗?我知道jQuery中的$().live函数可能非常适合您的需求,因为它会在添加到DOM时处理按钮...例如:< / p>

$('.btnRemove').live('click', function(e) { ... });