0

をご覧ください

<?php
if($_POST['submit'])
{
$beg=$_POST['basic'];
}

if($_POST['inter'])
{
$int=$_POST['int'];
}

if($_POST['advance'])
{
$adv=$_POST['adv'];
}
?>

function refreshPrices() {

   var beg=<?php echo $beg; ?>;
   var inte=<?php echo $int; ?>;
   var advn=<?php echo $adv; ?>;


    var currentTotalValue = 0;
    currentTotalValue = currentTotalValue + parseInt(beg) + parseInt(inte) + parseInt(advn);
    $("#results div").each(function() {
        if (!isNaN(parseInt($(this).find("span").text().substring(1)))) {
            currentTotalValue += parseInt($(this).find("span").text().substring(1));
        }
    });


    $("#totalValue").text("$" + currentTotalValue)
}

PHP から変数を 1 つ追加して jQuery 関数の現在の合計に追加すると正常に機能しますが、3 つの変数を追加して jQuery 合計に追加すると機能しません。私のhtmlには、jQueryの合計に追加される値が何であれ、それらを2番目のページに投稿するためだけに、異なる非表示の値を持つ3つのボタンがあります。

4

2 に答える 2

2

ただ使う

json_encode(array($val,$val2,$val3))

それをjsファイルに新しい配列に出力します。

于 2012-12-20T12:36:06.420 に答える
1

うまくいかない理由は簡単です。無効な JavaScript を作成しています。

$int = null;その場合、echo $int;何も出力されvar inte = ;ず、有効ではないため、「機能しない」としましょう。$intまた、その他の変数がユーザー入力である限り、結果はさらに悪化する可能性があります。したがって、最初に入力を検証し、デフォルト値も設定して、コンテンツに有効な JavaScript が含まれるようにします。

var beg=<?php echo (is_string($beg)) ? $beg : defaultValue; ?>;
于 2012-12-20T12:29:58.197 に答える