jquery将监听器添加到附加内容

时间:2013-02-12 13:05:11

标签: javascript jquery jquery-append

我有一些像这样的jQuery代码:

$("#add").click(function(event){
    $("#list").append('<a class="remove" href="#">x</a>');

    return false;
});

$('.remove').live('click', function(){
    alert("123");
});

如果单击class = remove,我希望它提醒123.但这不会发生。我认为这是一个简单的想法,但我必须遗漏一些东西。

有什么想法吗?

感谢。

3 个答案:

答案 0 :(得分:9)

不赞成使用,

使用
$(document).on('click','.remove',function(){
alert("123");
});

答案 1 :(得分:2)

在没有委托的情况下添加元素和绑定事件的另一种方法:

$("#add").click(function(event){
    $("<a />", {
        "class": "remove",
        href: "#",
        text: "x"
    }).on("click", function() {
        alert("123");
        return false;
    }).appendTo("#list");

    return false;
});

避免使用live方法,因为它已被弃用并最终在最后一个版本的jQuery中删除。

答案 2 :(得分:1)

尝试使用委托功能..因为你要支持list ...你可以使用#listdocument

表现更好
 $('#list').on('click','.remove', function(){
     alert("123");
});

您可以浏览该链接,详细了解on()事件