2016-05-18 36 views
0

Zum Beispiel ich ein hier für Schleife haben, die eine gewisse Anzahl erzeugen lag in einem divErste das letzte Kind der gleichen Klasse

var countProfile = 0; 
var tablehtml = ""; 
    for (var i=0; i <10; i++){ 

    tablehtml = tablehtml + '<div class="DataCount">'+countProfile+'</div>' 

    countProfile++; 
    }; 

    $("#somewhere").html(tablehtml); 

Und ich versuche das letzte Kind für eine andere Methode zu greifen zu verwenden, Ich habe versucht, :last-child() zu verwenden, aber es funktioniert nicht in meiner Anwendung, mache ich es falsch?

var dataCounting = $(".DataCount:last-child").html(); 
console.log(dataCounting); 

Antwort

3

:last-child wählt letzte in ihren Eltern, die eine mehr als sein kann, wenn sie sich in verschiedenen Eltern sind, versuchen Sie stattdessen last() oder :last

$(".DataCount").last().html(); 

Oder wenn Es gibt nur einen Elternteil, der verschiedene Arten von Elementen enthält, manchmal :last-child wird nicht wie erwartet funktionieren (für weitere Informationen: The Difference Between :nth-child and :nth-of-type), verwenden Sie stattdessen :last-of-type.

$(".DataCount:last-of-type").html(); 
+0

Ich verwende .last(), aber es funktioniert nur während des ersten Mal, wenn der Benutzer Klicken Sie darauf, und wenn der Klick es wieder gibt es wieder undefine – anson920520

+0

können Sie vollständigen Code in http://jsfiddle.net –

+0

es ist nur mein eigener Bug, es ist behoben – anson920520

Verwandte Themen