我如何获得与jquery匹配类的第一个父级?

kor*_*ben 3 javascript jquery

我正在尝试获取匹配类检查的第一个父元素,但我遇到了问题.我的页面可能如下所示:

<input id="hidden1" type="hidden" value="5" class="includeds">
<h3>header</h3>
<ul class="groups">
    <li><input id="li1" type="checkbox" value="1" onclick="value()"></li>
    <li><input id="li2" type="checkbox" value="2" onclick="value()"></li>
    <li><input id="li3" type="checkbox" value="3" onclick="value()"></li>
</ul>
<input id="hidden2" type="hidden" value="3" class="includeds">
<h3>header2</h3>
<ul class="groups">
    <li><input id="li4" type="checkbox" value="4" onclick="value()"></li>
    <li><input id="li5" type="checkbox" value="5" onclick="value()"></li>
    <li><input id="li6" type="checkbox" value="6" onclick="value()"></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

因此,如果我单击复选框li1,我想"5"从其上方的隐藏字段中检索值.

如果我点击li5,我想"2"从它上面的第一个隐藏字段等获取值,等等.

我正在尝试这个(在value()函数内),但它不起作用,我一直收到一个未定义的错误.

var thevalue = $(this).closest(".includeds").value);
Run Code Online (Sandbox Code Playgroud)

要么

var thevalue = $(this).closest(".includeds").attr("value").toString());
Run Code Online (Sandbox Code Playgroud)

我不明白他们为什么不工作,有什么想法?谢谢你的帮助.

Jam*_*iec 6

我使用你的标记了:

var value = $(this).closest('ul').prevAll('.includeds:first').val();
Run Code Online (Sandbox Code Playgroud)

实例:http://jsfiddle.net/xfE8B/