2011-08-29 8 views
5

Como¿Es posible obtener un selector utilizando indexOf

<div id="box_1"> 
    <div id="box_2"> 
    <div id="box_3"> 

Si quiero conseguir todos los identificadores que empiezan con 'Box_' ¿cómo puedo hacer que algo como esto ..

$("#box_" + anything) 

Desafortunadamente envolver el div no funcionará porque obtendrá todos los otros div en el lado y entre los divs del cuadro.

Supongo que puedo darles a todos otra clase y hacer referencia de esa manera, pero me pregunto si hay algo como esto por ahí ... gracias.

Respuesta

1

Sí:

$('div[id^="box_"]'); 

En este caso, ya que están tratando de utilizar el selector de ID, es mejor cambiar a un selector de elemento, combinado con un selector de atributos.

2

Es posible con el selector attribute starts with como otros han mencionado, pero podría ser mejor para dar a cada elemento de una clase:

<div id="box_1" class="box"></div> 
<div id="box_2" class="box"></div> 
<div id="box_3" class="box"></div> 

Seleccionar con:

$(".box") 
1

Si usted no sabe si se inicia o endsWith cualquier cadena entonces puede intentar *= selector que se verá en el valor del atributo.

$("div[id*='box_']"); 
Cuestiones relacionadas