0

我正在使用一个 ajax 函数来构建填充innerHTML跨度,然后构建 jquery 函数。我第一次调用 jquery 函数时它工作正常,但是如果我再次调用 ajax 函数,jquery click 函数将被调用两次,如果我再次调用它,jquery 会被调用 3 次,依此类推。这是我正在使用的 jquery 方法:

$(".delete_mail").live('click', function() {
                                     $(this).delete_mail();
                                    });

.die我在填充之前尝试了innerHTML但它没有帮助。我想live在填充之前删除 jquery 方法,innerHTML这样它就不会被复制。

请帮忙。

4

1 回答 1

1

.live()函数将处理程序绑定到所有当前和未来匹配元素的事件。

所以,一般来说,你应该只调用一次.live(),否则它会不断添加新的处理程序。

尝试将.live()调用移至onload事件并仅调用一次,处理程序将自动绑定到通过 Ajax 调用添加的新元素。

于 2009-11-30T12:20:40.563 回答