2011-11-08 18 views
31

Con jQuery, es fácil seleccionar elementos con un valor de atributo dado.Cómo selecciono elementos en múltiples valores de atributo

Por ejemplo:

var elements = $('div[attr1="value1"]'); 

Pero cómo puedo seleccionarla en múltiples atributos (por ejemplo, attr1 = value1 yattr2 = value2)?

+2

pregunta Duplicar http://stackoverflow.com/questions/155977/jquery-match-multiple-attributes –

Respuesta

11

Usted podría, por ejemplo, la cadena y el filtro al igual que

var elements = $('div[attr1="value1"]').filter('div[attr2="value2"]'); 
57

Desde jQuery utiliza selectores CSS, tal como se define por la especificación CSS un selector con múltiples condiciones se verá así:

$('div[attr1="value1"][attr2="value2"]') 

ver la Especificación CSS para referencia adicional: http://www.w3.org/TR/CSS2/selector.html#matching-attrs

0

Para seleccionar múltiples atributos, vea el código a continuación.

Este código encontrará todas las entradas que tienen un atributo id y cuyo atributo de nombre termina con 'man' y establece el valor.

$("input[id][name$='man']").val("this input has id and name ends with 'man'"); 
3

Encuentra esta solución bastante simple.

$('[attr1="home"],[attr2="settings"]') 
+0

Esto es incorrecto, ya que coincidirá con elementos que tienen ya sea attr1 = "casa" * O * = attR2 ajustes " "(es decir, la unión de ambos conjuntos). La pregunta establece específicamente * AND * (intersección de ambos conjuntos). –

+0

Verificará y actualizará la respuesta. –

Cuestiones relacionadas