1

我有一个表单,用户在其中输入某些信息,然后他们通过 Javascript 取回一些信息。

我想将 Javascript 中的信息传递到另一个页面。虽然,在用户输入的表单中,有一个输入字段,我也想将其传递到下一个屏幕。我知道我可以通过 $POST 和 session 传递这个 Input 字段,但这是我正在努力解决的 Javascript 字段。

这是我的表单(我将显示一个字段,以免代码淹没屏幕):

//I added this hidden field and it stopped my javascript form updating//
<input id="amount" type="hidden">
//===========================================================// 
<input class="applyForm-input"  id="amount" name="amount" type="text"  autocomplete="off" maxlength="6" style="position:relative; left:200px; top:-24px;">

这是通过 Javascript 输出的位置:

<div class="loanForm-totalToBorrow v-number" id="amountdiv">

这是我针对这个特定领域的 Javascript:

function updateCost() {

var amount = parseFloat(document.getElementById("amount").value) || 0.00;
    delivery = parseFloat(document.getElementById("delivery").value);
        if(delivery !='select' && delivery)
        {
            delivery=parseFloat(delivery);
        }
        else
        {
           delivery= 0.00;
        }
    total = amount + delivery;
    fixedrate =  total / 100 * 12.2;
    grandtotal = fixedrate + total;   

document.getElementById("amountdiv").innerHTML = amount.toFixed(2); 

现在我知道 PHP 是服务器端,Javascript 是客户端。那么我如何将这些数据传递给 PHP 变量。

在我的第二页上,我想输出一些会话。下面的一个例子:

<?php
echo ' <tr class="blah1"> ';
echo ' <td class="blah2">&#163;' . $_SESSION['amountdiv'] . ' </td> ';
echo ' </tr> ';
?>

我查看了stackoverflow,人们提到了隐藏的输入字段。虽然,当我添加这些时,我的 Javascript 停止工作。

4

3 回答 3

0

You can use jQuery's AJAX abilities

$(document).ready(function(){ 
    $("#mysubmitbutton").click(function(){
    var amount = parseFloat(document.getElementById("amount").value) || 0.00;
        delivery = parseFloat(document.getElementById("delivery").value);
            if(delivery !='select' && delivery)
            {
                delivery=parseFloat(delivery);
            }
            else
            {
               delivery= 0.00;
            }
        total = amount + delivery;
        fixedrate =  total / 100 * 12.2;
        grandtotal = fixedrate + total;
        .post("mysecondpage.php", {total: total, fixedrate: fixedrate, 
                                   grandtotal: grandtotal});
    });
}); 

The above grabs your JavaScript variables and posts them to the PHP page you want to redirect to

<?php

$total = $_POST["total"];
$fixedrate = $_POST["fixedrate"];
$grandtotal = $_POST["grandtotal"];

?>

You can then grab the transferred values

于 2013-03-15T15:25:19.033 回答
0

您在上面发布了 2 个“输入”字段。问题是,您的隐藏输入与您的文本字段具有相同的 id="amount" 。

id-attributes 的值在整个 html 页面中必须是唯一的。

因此,我建议重命名隐藏输入字段的 id,您的 javascript 应该会再次工作,您可以使用隐藏输入发布到下一页。

于 2013-03-15T15:13:05.323 回答
0

您可以在页面加载时将 php 变量值分配给 javascript 变量。

$var = $_SESSION['session_var'];

<script type="text/javascript">
 var myVAr = <?php echo $var; ?>;
</script>
于 2013-03-15T15:12:08.543 回答