2009-07-22 26 views
15

tengo un div con muchos muchos elementos HTML como otros divs, TRS, TDS, mesas, etc.jQuery obtener sólo todos los elementos HTML con ID

¿Es posible obtener todos los elementos que tienen una identificación? Sé que preguntando $("#test") me dará el elemento específico con este ID

pero ¿es posible obtener find("#") o algo así ?!

Respuesta

50

$('[id]') devuelve todos los elementos que tienen ID SET

+0

Advertencia: esto será bastante lento en una gran dom – redsquare

+0

+1, solución elegante –

+0

Esto está limpio. El único problema al hacerlo de esta manera es que debe leer los ID del nodo para saber qué está mirando. No todas las identificaciones en la página serán útiles. Pero si revisa, leyendo el tipo de nodo, debería poder hacer cosas como, por ejemplo, encontrar los elementos de entrada, por ejemplo. – Yitzhak

0

You should look into documentation on their selectors. Esto le mostrará exactamente qué hacer en cualquier situación al momento de seleccionar algo.

También tenga en cuenta que se puede utilizar más de un selector a la vez, al igual que su ejemplo:

$("div,span,p.myClass").css("border","3px solid red"); 
+5

Stackoverflow no está hecho para "leer el manual", está hecho para ayudar, es por eso que obtiene mi -1. –

+3

Esto NO es una respuesta de lectura del manual. Le da una lista de selectores y todo lo que puede hacer con ellos. Es imposible para mí darle una respuesta exacta sin ver toda la página, sabiendo exactamente lo que quiere seleccionado. Es extremadamente sencillo, y es algo que terminará mirando con bastante frecuencia hasta que se acostumbre a seleccionar cosas. ¿Prefiere venir aquí y hacer una pregunta para cada tipo de nueva selección que haga, o tener una lista de todo lo que puede hacer con ellos, así como la sintaxis correcta? – Sneakyness

+0

No solo eso, sino que también incluye una lista de muchos otros tipos de ahorro de tiempo útiles, como filtros y ancestros. Honestamente, esta es una de las páginas más útiles para las personas que recién comienzan a escribir en jQuery, y desearía haberlo tenido cuando comencé a aprender jQuery. – Sneakyness

2

Puede utilizar la siguiente sintaxis para limitar los resultados:

$('input[id*=test_id]').live('click', callbackFunc()); 

o

$('.elements_set[id*=test_id]').live('click', callbackFunc()); 

o de la misma manera

$('input[name*=test_id]').live('click', callbackFunc()); 

Estos son llamados Attribute Selectors

Enlaces de referencia:

Cuestiones relacionadas