jQuery 最接近的类问题
这是我的 jQuery
$('.vote_down').live('click', function() {
var $votes = $(this);
var c_id = $(this).closest('.c_id').val();
var c_vote = $(this).closest('.c_vote').val();
$.ajax({
type: "POST",
url: "votes.php",
data: "c_id="+c_id+"&c_vote="+c_vote,
success: function(html){
$votes.parent().html(html);
}
});
});
这是它从中提取的 html:
vars c_id
和 c_vote
目前什么也没得到
<div class="votes">
<input type="hidden" class="c_id" value="5" />
<input type="hidden" class="c_vote" value="2" />
<img src="down_vote.png" border="0" class="vote_down" alt="Down Vote" />
</div>
Here is my jQuery
$('.vote_down').live('click', function() {
var $votes = $(this);
var c_id = $(this).closest('.c_id').val();
var c_vote = $(this).closest('.c_vote').val();
$.ajax({
type: "POST",
url: "votes.php",
data: "c_id="+c_id+"&c_vote="+c_vote,
success: function(html){
$votes.parent().html(html);
}
});
});
And here is the html it's pulling from:
The vars c_id
and c_vote
currently get nothing
<div class="votes">
<input type="hidden" class="c_id" value="5" />
<input type="hidden" class="c_vote" value="2" />
<img src="down_vote.png" border="0" class="vote_down" alt="Down Vote" />
</div>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您使用了错误的功能。
closest
获取最近的祖先。输入字段不是图像的祖先,它们是兄弟。您可以这样做:
或者如果顺序始终相同:
参考:
prevAll
,上一页
You are using the wrong function.
closest
gets the closest ancestor. The input fields are not ancestors of the image, they are siblings.You can do:
or if the order is always the same:
Reference:
prevAll
,prev
-在你的评论后编辑,我敢打赌,我ment prev()-
如果你总是使用这种 HTML 结构,为什么不使用 prev(); ?尝试上面的代码
-edited after your comment, true my bet, I ment prev()-
If you always use this HTML structure, why not use prev(); ? Try the above code