1

私はこのようなhtmlコードを持っています:

<li id="vol" rel="1">
    // something here
</li>
<li id="vol" rel="2">
    // something here
</li>
<li id="vol" rel="3">
    // something here
</li>

私はこのコードでrel属性を取得しようとしています:

$('#vol').click(function(){
  var rel = $(this).attr('rel');
});

しかし、それは機能していません。私もに変更thisしまし#volたが、うまくいきませんでした。私は何をすべきか?

4

5 に答える 5

4

li動作しないことにより、クリックすると元に戻ると想定してい1ます。これは、ページに複数のIDがあることが原因です。IDは一意であると想定されているため、代わりにクラスを使用してください。

試す

<li class="vol" rel="1">
    // something here
</li>
<li class="vol" rel="2">
    // something here
</li>
<li class="vol" rel="3">
    // something here
</li>

JS:

$('.vol').click(function(){
  var rel = $(this).prop('rel');
});
于 2012-07-30T10:58:39.697 に答える
4

あなたのすべてidは同じです。だから、それらを変えてください。あなたがどのクラスのli中にいると仮定しますulclsTest

$('.clsTest li').click(function(){
  var rel = $(this).attr('rel');
  alert(rel);
});
于 2012-07-30T11:00:39.620 に答える
1

「id」(#id)によるセレクター要素を1つだけ選択し、代わりに「class」(。class)を使用します

于 2012-07-30T10:59:11.753 に答える
1

コードを次のように変更します

<li class="vol" rel="1">
    // something here
</li>
<li class="vol" rel="2">
    // something here
</li>
<li class="vol" rel="3">
    // something here
</li>

<script>
$('body').delegate('li.vol','click',function(){
  var rel = $(this).attr('rel');
});
</script>
于 2012-07-30T11:02:19.557 に答える