Tengo una lista¿Cómo puedo contar la cantidad de niños?
<ul>
<li>
<li>
<li>
...
</ul>
necesito jQuery para contar el número de elementos en la lista.
Tengo una lista¿Cómo puedo contar la cantidad de niños?
<ul>
<li>
<li>
<li>
...
</ul>
necesito jQuery para contar el número de elementos en la lista.
Usted puede utilizar .length
, así:
var count = $("ul li").length;
.length
dice cuántos partidos el selector se encuentra, por lo que este análisis determina la cantidad <li>
bajo <ul>
elementos que tienen ... si hay sub-hijos, el uso "ul > li"
en su lugar para obtener solo niños directos. Si tiene otros elementos <ul>
en su página, simplemente cambie el selector para que coincida solo con el suyo, por ejemplo, si tiene una ID que usaría "#myListID > li"
.
En otras situaciones en las que no conoce el tipo de niño, puede utilizar el selector *
(comodín), o .children()
, así:
var count = $(".parentSelector > *").length;
o:
var count = $(".parentSelector").children().length;
¿Qué pasa si, no es conocido que el niño es "Li", y podría ser cualquier cosa? – Starx
@Starx: '$ (" # parent "). Children(). Length' – alecananian
@AlecAnanian, No, sé cómo. Quiero decir que esperaba que Nick agregara eso a su respuesta también. – Starx
Try para obtener el uso:
var count = $("ul > li").size();
alert(count);
¿Qué pasa si está utilizando esto para determinar la selector de corriente para encontrar sus hijos por lo que este se tiene: <ol>
entonces no es <li>
s bajo la forma de escribir un selector var count = $(this+"> li").length;
no funcionará ..
si el ol tiene una clase puede escribir '$ (" ol.class> li "). Length ' – Qwerty
No es necesario jQuery para esto. Puede usar JavaScript .childNodes.length
.
Solo asegúrese de restar 1 si no desea incluir el nodo de texto predeterminado (que está vacío de forma predeterminada). Por lo tanto, tendrá que utilizar la siguiente:.
var count = elem.childNodes.length - 1;
olvidemos jQuery 'document.querySelectorAll ('ul li') length' – caub