2016-04-22 3 views
2

Der folgende Code klont die letzte Zeile in meiner Tabelle und löscht die Daten in den SPANs. Es gibt auch versteckte INPUTs (weil es Datentabelle ist), also ist meine Frage, wie mache ich einen anderen Fund, d. H. .find(".getdata input") in diesem Block von Code?jQuery-Syntax - mehrere Suchmethoden verwenden?

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

die var i ignorieren - ich – Warren

+0

vergessen zu löschen, was wollen Sie mit, dass versteckte Eingänge zu tun? –

+0

löschen Sie einfach ihre Daten – Warren

Antwort

0

Sie können es durch Caching das geklonte Element in einer besseren Art und Weise tun,

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

Und es gibt keine Notwendigkeit, alle Elemente iterieren seinen Text/Wert einzustellen. Jquery wird es für dich unter der Haube tun.

0

können Sie ketten sie

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++; 
}); 
Verwandte Themen