<form method="post" id="formFinish2">
<input type="checkbox" name="finish" />
<input type="hidden" name="id" class="finishId" value="2" />
</form>
<script type="text/javascript">
$(":checkbox[name='finish']").click(function() {
id = $(this).closest('input.finishId').val();
alert(id);
$("#formFinish".id).submit();
});
</script>
提醒我undefined
。我希望它提醒我2
,它来自您点击的复选框旁边的类finishId
的输入。
答案 0 :(得分:5)
这是因为closest
只搜索DOM 向上。换句话说,closest
开始按父元素,然后祖父元素等进行搜索。
您应该使用siblings
代替。
$(this).siblings('input.finishId').val();
答案 1 :(得分:2)
除了兄弟姐妹的功能,你也可以使用下一个功能。见http://api.jquery.com/next/