$(document).ready(function() {
$( ".clicker" ).click(function() {
//var fid = $( this ).parent().next().find('.plus-minus').attr('id');
var fid = $( this ).next().attr('id');
console.log(fid);
});
});
HTML
<h5><?=$awardyear?> <span id="here" class="clicker hover"><img src="/_images/<?=($i==1?'minus':'plus');?>.gif" class="plus-minus" id="iconwinners<?=$awardyear?>" /></span></h5>
我试图获取img标签的ID ...无法为我的生活找出原因,为什么它返回未定义。谢谢!
答案 0 :(得分:1)
你可以使用var fid = $(this).find(&#39; img&#39;)。attr(&#39; id&#39;);
答案 1 :(得分:0)
图像位于范围内,因此您无法使用next()方法。你应该使用children()代替。
答案 2 :(得分:0)
您目前有:
<h5>
<span>
</span>
</h5>
你的jquery在<span>
,你告诉它转到下一个元素(在同一个树级别),但是没有元素。不过这样可行:
<h5>
<span>
</span>
<img/>
</h5>
我认为你打算做的是
$(document).ready(function() {
$( ".clicker" ).click(function() {
var fid = $( "img", this ).attr('id');
console.log(fid);
});
});
这表示在this
(当前元素.clicker
)上,在其中找到img