2011-11-08 24 views
31

jQueryを使用すると、特定の属性値を持つ要素を簡単に選択できます。例えば複数の属性値で要素を選択する方法

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

しかし、私は複数の属性(例えば、attr1 = value1attr2 = value2を)どのように選択するのですか?例えば、チェーンの

+2

重複質問http://stackoverflow.com/questions/155977/jquery-match-multiple-attributes –

答えて

11

あなたは可能性があり、そう

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

CSS仕様で定義されているようjqueryのは、CSSセレクタを使用しているため、複数の条件を持つセレクタは次のようになりますようにフィルタリング:

が見

$('div[attr1="value1"][attr2="value2"]') 
CSS参照: http://www.w3.org/TR/CSS2/selector.html#matching-attrs

0

複数の属性を選択するには、以下のコードを参照してください。

このコードでは、id属性を持ち、name属性が 'man'で終わり、値を設定するすべての入力が見つかります。

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

この解決法は非常に簡単です。

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

それはATTR1 = "ホーム" * OR * ATTR2 = "設定のいずれかを有する要素にマッチしますので、これは正しくありません。 "(すなわち、両方の集合の和集合)。質問には、* AND *(両方の集合の交点)が具体的に述べられています。 –

+0

答えを確認して更新します。 –

関連する問題