Tengo un div y tiene varios elementos de entrada ... Me gustaría recorrer cada uno de esos elementos. Ideas?
257
Use children()y each(), opcionalmente, puede pasar un selector achildren
$('#mydiv').children('input').each(function () {
alert(this.value); // "this" is the current element in the loop
});
También puede usar el selector secundario inmediato:
$('#mydiv > input').each(function () { /* ... */ });
each(). Verifique los documentos, vinculados en la respuesta anterior.También es posible iterar a través de todos los elementos dentro de un contexto específico, sin importar cuán profundamente anidados estén:
El segundo parámetro $ ('# mydiv') que se pasa al selector jQuery 'input' es el contexto. En este caso, la cláusula each () iterará a través de todos los elementos de entrada dentro del contenedor #mydiv, incluso si no son hijos directos de #mydiv.
fuente
Si necesita recorrer elementos secundarios de forma recursiva :
fuente
También se puede hacer de esta manera:
fuente
Esto itera a través de todos los elementos secundarios y se puede acceder a su elemento con valor de índice por separado utilizando elemento e índice respectivamente.
fuente
children () es un ciclo en sí mismo.
fuente
No creo que necesite usar
each(), puede usar el bucle estándarde esta manera puede tener el estándar para funciones de bucle como
breakycontinuefunciona de manera predeterminadatambién el
debugging will be easierfuente
$.each()siempre es más lenta que unforbucle, y esta es la única respuesta que la usa. La clave aquí es usar el.eq()para acceder al elemento real dentro de lachildrenmatriz y no la[]notación de corchete ( ).