2012-04-10 7 views
-1

は、ここではいくつかのコードであるときのattrを取得: http://jsfiddle.net/T65E3/3/ 私は(私はclass既知のクラス

$("#find").click(function() { 
    $("#test").append($("#file").find("a.higlight").attr("rel")); 
}); 

とhtml

<div id="file"> 
<ul> 
<li> 
     <a class="higlight" rel="a">value_my</a> 
     <a class="sth" rel="b">val</a> 
     <a class="sth" rel="c">val2</a> 
     <a class="sth" rel="d">val3</a> 

</li> 
</ul> 
</div> 

<button type="submit" id="find">find</button> 
<div id="test"></div> 
+3

jsFiddleはあなたのコードをデモするのに最適ですが、あなたの質問にもコードを投稿してください。 (あなたもMootoolsをjsFiddleにロードしてjQueryが動かないようにしてください。そうでなければ、あなたのコードは動いています) – Sparky

+2

あなたの例でjQueryをロードするのを忘れました。 http://jsfiddle.net/T65E3/5/ –

+2

'$("#file ")。find(" a.higlight ")。attr(" rel ")'は、最初の要素。複数の要素の属性を取得するには、 '.each'または' .map'を使う必要があります。 –

答えて

1

あなたのコードはそのままです(jQueryを組み込むと、あなたのサンプルにMooToolsが含まれています)がうまくいきます。私が指摘したいことが一つだけあります。

$("#file").find("a.higlight").attr("rel") // 'a' 

これは、最初に一致した要素のrel属性のみを返します。すべてのrel属性を取得するには(複数の要素がある場合)、.mapを使用できます。

+0

しかし、私は私のコードでそれは私に "未定"を示す警告している – beetle

+0

@GabrielŻukowski:あなたのコードは私のためにうまくいく:http://jsfiddle.net/T65E3/5/要素のクラスをダブルチェック、クラス 'higlight'を持つ要素があります。 –

+0

Hmm。 $ dialog - jqueryで私のコードを使用しています。火かき棒のhtmlコードはグレーです - これは "ダイアログ"です。それは理由ですか? – beetle

0

を知っているとき、私はあなたがテキストを使用することをお勧めattrを取得したいが、 )メソッドを使用して、要素にテキストを追加します。あなたの主な問題は、jQueryの代わりにMooToolsのonloadを呼び出すことでした。これを変更すると、スクリプトは正常に動作します。

関連する問題