我有以下div:
<div class="vote">
<input type="hidden" name="reply-id" value="83743">
<a class="vote-up-0" title="Vote Up This Comment">up</a>
<a class="vote-down-0" title="Vote Down This Comment">down</a>
</div>
<div class="vote">
<input type="hidden" name="reply-id" class="reply-id" value="83745">
<a class="vote-up-0" title="Vote Up This Comment">up</a>
<a class="vote-down-0" title="Vote Down This Comment">down</a>
</div>
(是的,这是SO代码的原始副本,我正在尝试看看他们是如何做到的)。
因此,当用户单击“赞成”或“反对”时,它应该找到隐藏的ID。
这似乎不起作用:
$('a.vote-up-0').click(function() {
var id = $(this).closest('.reply-id').val();
最佳答案
closest
通过在DOM树上查找与选择器匹配的第一个元素来工作。它仅匹配祖先元素。它绝不会考虑同级元素。
您要使用 siblings
:
$(this).siblings('.reply-id').val();
关于jquery - 选择最近的隐藏输入,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5688337/