2017-09-26 5 views
2

私は助けが必要です!私は範囲入力を持っています:範囲の最大値に対するajax応答

<input type="range" name="set_workers" class="set_workers" id="set_workers" min="0" max="10"> 
    <input type="submit"> 

私はいくつかの値を取得するページの負荷で実行するajaxスクリプトを持っています。その値の1つを最大範囲に渡って出力する必要があります。だから私は動的な最大値で範囲の入力をしたい。それを行う方法はありますか?私はAJAXの応答にそれを置くためにPHPの範囲をエコーする必要がありますか?

window.onload = function() { 
    var current_building = $('#building_name').val(); 
    $.ajax(
    {type: 'post', 
    url: '../account_handle/get_cost_upgrade.php', 
    data: { 
    building: current_building, 
}, 
    success: function (val){ 
    $('#display_cost').html(val.test1); 
    $("#set_workers").attr("max", val.test2); 
} 
}); 

} 

とPHPコード: はここに私のAjaxです

$sql = "SELECT * FROM $buildcost WHERE lvl = '$lvl'"; 
$result = mysqli_query($conn,$sql); 
$row = mysqli_fetch_assoc($result); 

$max_w = $row['max_w']; 

    echo json_encode(array(
"test1" => "doesn t matter", 

"test2" => 
"$max_w" 
)); 

私はPHPからいくつかの役に立たない部分をcutted、PHPが動作している問題で、同じJSONではありませんが、私はtは知っているドンその値を最大範囲に入れる方法。 ありがとうございます!

+0

「1つの値を最大範囲で出力する必要がありますか」を詳しく説明できますか?あなたはajaxコールから返されたデータについて話していますか?あなたはおそらく最大の属性を変更することができますそれは応答データに関連するいくつかのサイズであるようにAJAX呼び出しが返される –

+0

はい、私はPHPが範囲のmax = ".."(attribute)でなければならない値をエコーすることを意味します –

+0

あなたのAjax成功関数では、 '$("#workers ")attr(" max "、val [1]);'のようなデータをPOSTでget_cost_upgradeに返すので、エコーする必要はありませんそのデータをajax呼び出しで返しているからです。 –

答えて

1

はい、phpからecho経由で絶対最大値を取得し、その値を入力のmax属性に渡す必要があります。このような何かがトリックを行います。

window.onload = function() { 
     var current_building = $('#building_name').val(); 
     $.ajax(
     {type: 'post', 
     url: '../account_handle/get_cost_upgrade.php', 
     data: { 
     building: current_building, 
    }, 
     success: function (response){ 
     $('#display_cost').html(response); 
     //This line will set the "max" attribute to whatever you respond with in your PHP, 
     //although please note how you access that data depends on how you 
     //format it in your PHP 

     $("#workers").attr("max", response.max) 
     //Access the JSON object's value via it's key, like below 
     console.log(response.test1); 
     //or 
     console.log(response.test2); 



    } 
    }); 

    } 

しかし - あなたはあなたのAJAX成功機能でアクセスできる場所に、このような方法であなたの応答を変更する必要があります。どのようにアクセスするかは、PHPレスポンスのフォーマット方法によって異なります。あなたがPHPコードを投稿した場合、それを手伝ってうれしいです。

+0

親切に感謝します、サー!私は自分の投稿を編集... PHPを忘れてしまった。 phpとajaxの最後の行は相対的なものです...私は何の代わりに何を知っていないということを意味します... –

+1

@BoteaFlorin、あなたは今、PHPのjsonオブジェクトの値をそのキーを介してアクセスできるはずです。私はあなたのためにそれを反映するために私のコードを更新します。 –

+1

@BoteaFlorin私の更新情報を参考にしてお知らせください。 –

関連する問題