2013-11-20 14 views
17

iは、以下のデータ属性を持ついくつかの要素を持っていると言う属性名を取得しますか?jqueryのは、データと一致するすべての要素が

私はいくつかのことを試しましたが、うまく動作しません。

私の最新の試みだった:

$('data-my-key').click(... 

$(document).find('data-my-key').click(... 
+0

セレクターの使い方に関する注意。名前を使うだけで要素が選択されます。意味、ちょうどストリング$( 'div')。clickでそれを持っていた方法は、すべてのDIV要素を選択します。 $( '#div')はid = 'div'の要素を選択し、$( 'div')はclass = 'div'の要素を選択します。もちろん、要素にIDまたはClass of divを与えるのは奇妙ですが、選択構文の例に過ぎません。 –

答えて

35

あなたは属性セレクタを使用することができます:jQueryの店舗data属性はDOMのロードの後に​​追加されたこと、しかし

$('[data-my-key]').click(... 

注意を要素の属性としてではなく内部キャッシュであるため、セレクタw彼らのためにはうまくいきません。その場合、あなたはfilterを使用する必要があります:

$(document).children().filter(function() { 
    return $(this).data('my-key'); 
}).click(...; 
+3

ねえ! - 私はとても近かった:) –

関連する問題