2016-07-06 4 views
-2

は、私は次のようにデータ属性を設定します。データ属性値に基づいて要素を検索します。構文の問題

jQuery('.question').data('status', status_value); // status_value can be wrong or correct 

今私は短縮構文は動作しないのはなぜ2行は別の

jQuery('.question').data('status') // returns value wrong or correct, e.g. data-attribute 'status' exists and filled with value 
jQuery(".question[status='wrong']") // returns undefined 

次々と起こってありますか?

私の仕事は、「間違った」

+2

を使用する理由はないあなたの人々はちょうどなぜ、問題のHTMLをダンプすることができます? – madalinivascu

+1

データ属性の場合、セレクタは次のようになります。 '$("。question [data-status = 'wrong'] ")'何も返されません。確かにそれは 'null'か' undefined'でなければなりません。 @madalinivascuが述べているように、より多くのコードがここで多く役立ちます。 –

+0

ちょうどFYI、dataSetと 'data- *'属性は、DOMがロードされるともうマップされません。しかし、これはあなたの質問とは関係ありませんね... –

答えて

0

jQueryのように、データ属性値を持つ要素を取得することです(「質問[データステータス= 『間違って』]」)属性が設定されているすべての要素を選択します間違ったのが、コードjQuery('.question').data('status', status_value);にあなたは属性を設定するには、DOMノードではない属性のデータオブジェクトを設定しているattr()

jQuery('.question').attr('data-status', status_value);

+0

お返事ありがとうございました。更新された質問を一目でご確認ください。多分もっと多くの情報が手がかりを与えることができます。 –

+0

2番目のsyintaxがセレクタであるため、ステータス属性が間違っているすべての要素を選択しています。 – madalinivascu

+0

はい、正確です。要素は存在しません(最初の行でチェックされています)。 –

関連する問題