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 添加一个变量并将它们添加到 jQuery 函数中的当前总数,它工作正常,但如果我添加 3 个变量并将它们添加到 jQuery 总数,它就不起作用。在我的 html 中,我有 3 个具有不同隐藏值的按钮,只是为了将它们发布到第二页,无论它将添加到 jQuery 总数中的值如何。

4

2 回答 2

2

只需使用

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

并将其打印到您的 js-file 到一个新数组中。

于 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 回答