4

変数からスライダーの最小値、最大値を取得する方法。

スライドしようとすると、スライダーが最大に設定され、機能しなくなります。

代わりに最小値と最大値を数値で入力すると、問題なく動作します。

問題を示すフィドルは次のとおりです。

<INPUT TYPE="text" CLASS="slidervalue">
<DIV CLASS="slider"></DIV>

<INPUT CLASS="getmin" TYPE="text" VALUE="1">
<INPUT CLASS="getmax" TYPE="text" VALUE="10"> 


             var getmin = $('.getmin').val();
             var getmax = $('.getmax').val();

           $(".slider").slider({

                    range: "max",
                    min: getmin,
                    max: getmax,
                    value: 2,
                    slide: function( event, ui ) {
                        $( ".slidervalue" ).val( ui.value );
                    }       

            });

http://jsfiddle.net/gk3dG/1/

4

1 に答える 1

8

jQueryUI スライダーは、文字列値ではなく、int 値を想定しています。 val()文字列を返します。

これを行うと、問題が解決します...

var getmin = parseInt($('.getmin').val(), 10);
var getmax = parseInt($('.getmax').val(), 10);

更新されたjsフィドルを参照してください...

NaN 値も処理する必要があるため、これを行うこともできます...

var getmin = parseInt($('.getmin').val(), 10);
var getmax = parseInt($('.getmax').val(), 10);

if (isNaN(getmin)) getmin = 1;
if (isNaN(getmax)) getmax = 10;

(1 と 10 がデフォルト値であると仮定します)。

于 2012-12-19T14:21:44.760 に答える