0

jquery ui rangeSlider を使用してユーザーが設定した特定の範囲の間のすべての値を配列で取得したいと考えています。

http://jqueryui.com/demos/slider/#range

$(function() {
    $( "#slider-range" ).slider({
        range: true,
        min: 0,
        max: 500,
        values: [ 75, 300 ],
        slide: function( event, ui ) {
            $( "#amount" ).val( "$" + ui.values[ 0 ] + " - $" + ui.values[ 1 ] );
        }
    });
    $( "#amount" ).val( "$" + $( "#slider-range" ).slider( "values", 0 ) + " - $" + $( "#slider-range" ).slider( "values", 1 ) );
});
</script>


<div>

    <label for="amount">Price range:</label>
    <input type="text" id="amount" style="border:0; color:#f6931f; font-weight:bold;" />

<div id="slider-range"></div>

したがって、この例では、範囲を 75 から 90 に設定して送信ボタンを押すと、次のような配列を取得したいと考えています。

var myArray = ['75','76', '77', '78', '79', '80', '81', '82', '83', '84', '85', '86', '87', '88', '89', '90'] ;

どんなアドバイスでも大歓迎です。

4

1 に答える 1

0

なぜこれが必要なのかわかりませんが、リクエストに対する簡単な解決策は次のとおりです。

$('#target').submit(function() {
  var start = $( "#slider-range" ).slider( "values", 0 );
  var end = $( "#slider-range" ).slider( "values", 1 );
  var myArray = range(start, end);
  // do your things here
  return false;
});

function range(start, end) {
  var arr = [];
  for(var i = start; i <= end; i++)
    arr.push(i);
  return arr;
}
于 2012-05-22T09:14:39.537 に答える