无法隐藏动态添加的数据

时间:2014-01-25 17:26:50

标签: javascript hide jquery

这是隐藏数据的功能

$(".dispatch_pedido").live('click', function(){

    var res = this.id.split("_");

    var id = res[1];

    $("#"+id).hide();
});

此代码仅适用于最初添加的数据,但不适用于ajax添加的数据。

2 个答案:

答案 0 :(得分:0)

当您使用ajax将新元素添加到DOM时,您需要使用event delegation,以便事件可以绑定到新添加的元素:

$(document).on('click', '.dispatch_pedido' , function(){

});

此外,自jQuery版live起,1.7已弃用,您应使用on()代替。


您可以在旧版本的jQuery中使用delegate()代替on()

$(document).delegate( ".dispatch_pedido", "click", function() {
    // Your code here  
});

答案 1 :(得分:0)

看来你的语法不正确。查看以下代码。

$(".dispatch_pedido").live('click', function(){

    var res = $(this).attr("id").split("_");

    var id = res[1];

    $("#"+id).hide();
});