0

我需要帮助来获取 ul li 列表的第一个、上一个、当前、下一个和最后一个值...

这是一个小jsfiddle:http: //jsfiddle.net/ptCoder/CCD29/

我已经尝试过这样的事情(下一个值):

alert($('#selectId li').next());

...但不工作。我已经尝试在这里搜索,但没有找到解决方案...

谁能帮我?

谢谢你。

4

3 回答 3

2

第一次和最后一次尝试这个:

 alert($('ul#selectId li:first').val());
 alert($('ul#selectId li:last').val());
于 2013-08-19T14:53:25.950 回答
2
$('li').first().val()

$('li').last().val()

对于第一个和最后一个'li'值..

对于下一个和上一个,您需要一个参考 'li' 元素

于 2013-08-19T14:43:38.823 回答
2

检查这个:http: //jsfiddle.net/CCD29/4/

$("#selectId li a").click(function () {
    $("#idValue").val(parseFloat(($(this).text())));
});

// First
$("#btnFirst").click(function () {
    alert($("#selectId li:first").val());
});

// Previous
$("#btnPrevious").click(function () {
    var currentVal = $("#idValue").val();
    var prev = $("#selectId li[value='" + currentVal + "']").prev();
    if (prev.length > 0) alert(prev.val());
});

// Current
$("#btnCurrent").click(function () {
    alert($("#idValue").val());
});

// Next
$("#btnNext").click(function () {
    var currentVal = $("#idValue").val();
    var next = $("#selectId li[value='" + currentVal + "']").next();
    if (next.length > 0) alert(next.val());
});    

// Last
$("#btnLast").click(function () {
    alert($("#selectId li:last").val());
});

顺便说一句,可能的value属性li可以工作(上面的代码显示),但你不应该使用它(Blazemonger 在评论中指出了原因)。你应该data-value改用。使用的小提琴data-value在这里:http: //jsfiddle.net/CCD29/5/

于 2013-08-19T14:48:03.973 回答