1

ユーザーが jQuery UI Selectable で値の範囲を選択すると、最初の数値と最後の数値の値が 2 つの入力になるようにします。誰もこれを行う方法を知っていますか?

私が今持っているものの例。現在、私の jQuery は一度に 1 つの値しか使用できません。

<script>
$(function() {
    $("#selectable").selectable({
        stop : function() {
            var items = '';
            var result = $("#select-result").empty();
            $(".ui-selected", this).each(function() {
                var index = $("#selectable li").index(this);
                items += (index + 1);
            });
            alert('You have selected: ' + items);
            $('input[name="bid"]').val(items);
        }
    });
    $("#selectable li").addClass("ui-state-default");
}); 
</script>
<form>
<div>
<ol id="selectable">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
</ol>
</div>
</form>

4

1 に答える 1

2

選択可能要素自体には範囲がありませんが、以下の関数使用すると、最初と最後に選択された要素を見つけることができます。

これらの要素を数値範囲に変換する方法は、あなた次第です。マークアップによって異なります。

$('#selectable').on('selectablestop', function() {
    var $selected = $(this).children('.ui-selected');
    var $first = $selected.first();
    var $last = $selected.last();
    // ...
});

http://jsfiddle.net/alnitak/sQwKu/のデモ

于 2012-07-14T21:50:51.993 に答える