我想要访问select选项的值,该选项在前一个选定选项之前,即2,远离所选选项。 (对不起,很难说出来!)
例如,如果" 4"从这里选择,我想得到选项" 2"。
的值<option value ="1">1</option>
<option value ="2">2</option>
<option value ="3">3</option>
<option value ="4">4</option>
我知道前一个方法有前一种方法,但其他方法呢?
谢谢!
答案 0 :(得分:3)
你可以这样做
$("select").change(function(){
var a = $('select option:selected').prev().prev().text();
alert(a);
});
示例:http://jsfiddle.net/jasongennaro/NcPgV/
但是,当选择为2或更低时,这不会返回任何内容。
答案 1 :(得分:2)
正如其他人所说,你可以两次致电prev()。
另一种更具伸缩性的解决方案是使用prevAll()。它返回从最近的兄弟中排序的元素,因此您可以将其与eq():
组合var siblingValue = $("option:selected").prevAll().eq(1).val();
这样,如果您希望从所选择的选项中移出2个以上的选项,则不必将多个调用链接到prev()
。
答案 2 :(得分:1)