Risposte:
Puoi usare .length, in questo modo:
var count = $("ul li").length;
.lengthdice quante corrispondenze ha trovato il selettore, quindi questo conta quanti elementi <li>sotto <ul>hai ... se ci sono sotto-figli, usa "ul > li"invece per ottenere solo figli diretti . Se hai altri <ul>elementi nella tua pagina, cambia semplicemente il selettore in modo che corrisponda solo a quello, ad esempio se ha un ID che useresti "#myListID > li".
In altre situazioni in cui non conosci il tipo di figlio, puoi utilizzare il *selettore (carattere jolly) o .children(), in questo modo:
var count = $(".parentSelector > *").length;
o:
var count = $(".parentSelector").children().length;
$("#parent").children().length
Non hai bisogno di jQuery per questo. Puoi usare JavaScript .childNodes.length.
Assicurati solo di sottrarre 1 se non vuoi includere il nodo di testo predefinito (che è vuoto per impostazione predefinita). Quindi, useresti quanto segue:
var count = elem.childNodes.length - 1;
Prova a utilizzare:
var count = $("ul > li").size();
alert(count);
Cosa succede se lo stai usando per determinare il selettore corrente per trovare i suoi figli, quindi questo vale: <ol>allora c'è <li>s sotto come scrivere un selettore
var count = $(this+"> li").length;non funzionerà ..
$("ol.class > li").length
Puoi farlo usando jQuery:
Questo metodo ottiene un elenco dei suoi figli, quindi conta la lunghezza di tale elenco, così semplice.
$("ul").find("*").length;
Il metodo find () attraversa DOM verso il basso lungo i discendenti, fino all'ultimo discendente.
Nota: il metodo children () attraversa un singolo livello più in basso dell'albero DOM.
document.querySelectorAll('ul li').length