0

如何使用 jQuery 在 HTML 选择中上下两个按钮?我在向上按钮上使用它

$('#selectBox option:eq(' + $("#selectt").prop("selectedIndex")-1 + '3)')
    .prop('selected', true);

我认为我们还需要一些“如果”来知道我们是否到达列表的末尾

4

3 回答 3

0

尝试这个

HTML

<select id="foo">
    <option>1</option>
    <option>2</option>
    <option>3</option>
</select>

<button id="up" class="dir" data-direction="-1">&uarr;</button>
<button id="down" class="dir" data-direction="1">&darr;</button>

Javascript

var sel = $('#foo');

$('.dir').on('click', function() {
    var btn = $(this),
        dir = btn.data('direction')
        currentIdx = sel.prop('selectedIndex'),
        newIdx = currentIdx + dir;
    if (newIdx < 0) newIdx = 0;
    if (newIdx >= sel[0].options.length) newIdx = sel[0].options.length - 1;
    sel.prop('selectedIndex', newIdx);
});

演示在这里 - http://jsfiddle.net/gXqKN/

于 2013-07-22T04:39:02.743 回答
0

尝试这个

$('#selectBox option:eq(' + $("#selectt option:selected").index()+')').prop("selected", "selected");
于 2013-07-22T04:47:39.733 回答
0

这是一个例子

http://jsfiddle.net/VDMXe/

html

<input id="up" type="button" value="Up" />
<input id="down" type="button" value="down" />
<select id="chart">
    <option value="red">Red</option>
    <option value="blue">Blue</option>
    <option value="green">Green</option>
</select>

js

    $(document).ready(function(){
        $("#up").click(function(){
            var a = $("#chart option:selected").prev();

            if(a.length != 0)
                 a.prop("selected", "selected");
        });

        $("#down").click(function(){
            var a = $("#chart option:selected").next();

            if(a.length != 0)
                 a.prop("selected", "selected");
        });

});
于 2013-07-22T04:33:56.560 回答