Как выбрать элементы по нескольким значениям атрибута
С помощью jQuery легко выбрать элементы с заданным значением атрибута.
Например:
var elements = $('div[attr1="value1"]');
Но как я могу выбрать несколько атрибутов (например, attr1 = value1
и attr2 = value2
)?
Ответы
Ответ 1
Поскольку jquery использует селектор CSS, как определено спецификацией CSS, селектор с несколькими условиями будет выглядеть так:
$('div[attr1="value1"][attr2="value2"]')
см. спецификацию CSS для дополнительной справки: http://www.w3.org/TR/CSS2/selector.html#matching-attrs
Ответ 2
Вы можете, например, цепью и фильтровать так
var elements = $('div[attr1="value1"]').filter('div[attr2="value2"]');
Ответ 3
Найти это решение довольно просто.
$('[attr1="home"],[attr2="settings"]')
Ответ 4
Чтобы выбрать несколько атрибутов, см. код ниже.
Этот код найдет все входы, которые имеют атрибут id
и чей атрибут имени заканчивается на "man" и устанавливает значение.
$( "input[id][name$='man']" ).val( "this input has id and name ends with 'man'" );