2012-02-27 15 views
5

Estoy analizando XML utilizando jQuery. Quiero obtener el recuento de todos los nodos secundarios con el nombre de etiqueta dado.Obtener el recuento de elementos jQuery.each()

Por ejemplo:

<People> 
<person name="hello'></person> 
<person name="hello'></person> 
<person name="hello'></person> 
<person name="hello'></person> 
<person name="hello'></person> 
</people> 

uso el siguiente código jQuery:

$(xml).find("person").each(function(){}); 

Por supuesto funciona el código anterior, pero sólo quiero para obtener el recuento, que hago No quiero repetir. La razón es esta: el ejemplo anterior es demasiado fácil, mi archivo XML y el código de JavaScript son un poco complejos, por lo que hay mucha lógica para descubrir el archivo xml, y no quiero gastar el código escribiendo todo eso.

¡Muchas gracias!

Respuesta

8

Si desea obtener el recuento a continuación, utilizar la propiedad length:

$(xml).find("person").length; 
+1

longitud es una propiedad, no una función. –

+0

'length' es un atributo, no un método. Suelta esos parens. –

+0

@SKS gracias, siempre confunde 'size()' y 'length' – JaredPar

1

O también tratar size():

$(xml).find("person").size(); 
+1

O' .length', que puede ser más rápido. –

+0

puede ser, pero no estoy seguro en este caso. Espero que tengas razón. – ZloyPotroh

+1

size() está en desuso ... use length – charlietfl

Cuestiones relacionadas