我有这样的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
,但它不起作用。
我该怎么办?
答案 0 :(得分: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');
});
答案 1 :(得分:4)
你的所有id
都是一样的。所以让它们变得不同。
假设您的li
位于ul
内,哪个类为clsTest
$('.clsTest li').click(function(){
var rel = $(this).attr('rel');
alert(rel);
});
答案 2 :(得分:1)
选择器按“id”(#id)只选择一个元素,改为使用“class”(。class)
答案 3 :(得分: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>
答案 4 :(得分:0)
$('.li').on('click', function(){
var target = $(this).attr('rel');
});
如果您使用li,我认为我们可以直接尝试element