0

.slider()メソッドが配列の値を使用するようにするにはどうすればよいですか?

これと同じスライダーを数回設定する必要があるので、一度呼び出すと、インデックスを使用して値を入力することにしました。これはそれを行う方法ではないかもしれませんが、それが私に来たものです。

スライダーを呼び出すたびに、次の6つの値に更新されるように、ステップスルーしてインデックス番号を変更したいと思いました。このコードは機能しないことに気づきました。説明のためだけです。

var yolo = ["yield", "true", "15.2", "308", "0.3", "[75.8, 241.4]", "tensile", "true", "37.7", "345", "[81.2, 243.3]"];

     $( yolo[0] ).slider({
        range: yolo[1],
        min: yolo[2],
        max: yolo[3],
        step : yolo[4],
        values: yolo[5],

        slide: function( event, ui ) {
            $( "#" + yolo[0] + "-value" ).val( ui.values[ 0 ] + " - " + ui.values[ 1 ] );
        }
     }); //When done, call again, just that updating the index numbers to the next 6

多分.each()$.extend()

4

3 に答える 3

1

あなたは次のように何かをすることができます:

var settings = {
    "yield" : {
         range: true,
         etc..
    },
    "yield2" : {
         range: true,
         etc..
    }
}

$.each(settings, function(key, value){
    var _key = key;
    $( "#" + _key ).slider(
        $.extend(value, {    
            slide: function( event, ui ) {
                $( "#" + _key + "-value" ).val( ui.values[ 0 ] + " - " + ui.values[ 1 ] );
            }
        })
    );
});

追加情報:

  1. jQuery.extend
  2. jQuery.each
于 2013-03-01T15:59:40.957 に答える
0

.each http://api.jquery.com/each/を使用して、配列を反復処理します。

于 2013-03-01T15:56:48.373 に答える
0

配列を使用する代わりに、プレーンオブジェクトを使用できます。

var yolo = {
   range : true,
   min : 15.2,
   max : 308,
   slide : function(){}
};

そしてそれをスライダーに渡します。

$(...).slider(yolo);
于 2013-03-01T16:00:10.197 に答える