0

スライダーを動かしたときに計算を実行して入力値を設定しようとしています。私はそれを機能させることができません。以下の私のコードを見てください:

if (modalContentCall[objname].private_use == true) {
    $(this).append($('<div>').load('Content_for_injection.htm #private_use',function(){
            $('#inputamount').change(function() {
            var isinputamount = parseInt($('#inputamount').val());

            });                 
               $( "#slider-range-max" ).slider({
                range: "max",
                min: 0,
                max: 100,
                value: 0,
                slide: function( event, ui ) {
                $( "#slideramount" ).val( ui.value );
                if (isinputamount > 0) {
                $( "#actualamount" ).val( ui.value/100*isinputamount );                 
                }
                else $( "#actualamount" ).val(0);
               }
});
$( "#slideramount" ).val( $( "#slider-range-max" ).slider( "value" ) );
$( "#actualamount" ).val( $( "#slider-range-max" ).slider( "value" ) );

このコードのほとんどは標準の UI コードであり、正常に動作します。私が追加しました:

if (isinputamount > 0) {
                    $( "#actualamount" ).val( ui.value/100*isinputamount );                 
                    }
                    else $( "#actualamount" ).val(0);
                   }

と:

$( "#actualamount" ).val( $( "#slider-range-max" ).slider( "value" ) );

#inputamount追加された入力をスライダーの値 (これを動かしたとき) で乗算し、100 で割って (小数の 1/100 のパーセンテージを得る)、結果の数値を取得したいと考えています#actualamount

私はそれを機能させることができないようです。

4

1 に答える 1

0

この問題は、グローバル変数を使用することで解決されました。質問の 4 行目のコードを次から変更しました。

var isinputamount = parseInt($('#inputamount').val());

これに

window.isinputamount = parseInt($('#inputamount').val());

今では正常に動作します。

于 2013-05-22T17:06:47.687 に答える