2016-04-22 20 views
2

下面的代码克隆表中的最后一行,并清除SPAN中显示的数据。还有一些隐藏的INPUT(因为它是数据表),所以我的问题是,我该如何做这个代码块中的另一个发现,即.find(".getdata input")jQuery语法 - 使用多个查找方法?

var i = 1; 
$("#addRow").click(function() { 
    $("table tr:last").clone().find(".getdata span").each(function() { 
     $(this).text(''); 
    }).end().appendTo("table"); 
    i++; 
}); 
+0

忽略了var我 - 我忘了删除 – Warren

+0

你想隐藏的投入做什么? –

+0

只需清除他们的数据 – Warren

回答

0

您可以通过缓存克隆的元素做一个更好的办法,

$("#addRow").click(function() { 
    var clone = $("table tr:last").clone(); 
    $(".getdata span", clone).text(""); 
    $("input[type=hidden]", clone).val(""); 
    clone.appendTo("table"); 
}); 

而且也没有必要过分遍历所有设置其text /值的元素。 Jquery会为你做到这一点。

0

你可以把它们连

var i = 1; 
$("#addRow").click(function() { 
    $("table tr:last").clone().find(".getdata span").each(function() { 
     $(this).text(''); 
    }).end() 
    .find(".getdata input").each(function() { 
     //do other stuf here 
    }).end().appendTo("table"); 
    i++; 
});