在新添加的元素上应用事件处理程序

时间:2012-11-19 07:33:39

标签: jquery events dom

这是我在jquery中尝试的代码。

$(document).ready(function()
{

$("#button1").bind("click", function(){
  $("tr:contains('Clothing')").after("<tr><td colspan='4' class='special'>Special offer!!!</td></tr>");  
  });

$("#removeit").live('click', function(){

  $(".special").remove();

  $("p").text("its remove");


  });

  $("#removeit").trigger("click");

});

问题:当我点击#removeit按钮时,它没有删除我之前添加的special offer行(tr),我尝试了不同的事件方法,例如:live,{ {1}}但没有任何作用。

1 个答案:

答案 0 :(得分:0)

看看这个(可能会给你一个想法)

$(document).ready(function()
{
    $("#button1").on("click", function(){
        $("tr:contains('Clothing')")
        .after("<tr><td colspan='4' class='special'>Special offer!!!</td><td><button class='removeit btn btn-mini'>Remove</button></td></tr>");  
    });

    $('.myTable').on('click', '.removeit', function(){
        $(this).closest('tr').remove();
        $("p#msg").text("it\'s removed");
    });
});

DEMO

this could be helpful