如何使用ajax将javascript变量传递给php

时间:2015-10-01 08:50:59

标签: javascript php ajax

我想将javascript变量传递给php文件。在这里,我附上了我的代码

function Calculate(val)
    {

        var h = document.getElementById('xyz').textContent ;
        var result = h * val;
        result = result.toFixed(2);
        document.getElementById('lblRes').innerHTML ='$'+ result;
        $('#ori_price').hide();

        $.ajax ({
            url: 'nonmembersdetail1.php',
            type : 'POST',
            data : {val : h},
            success: function( result ) {
                alert( result );
            }
        });
   }

<?php
echo "<td ><label id='xyz' name='xyz'>".  $row->nonmember_price  ."</label></td>";
echo "<td ><input type='text' style='width:40px' id='words' name='qty' value='1' onchange='Calculate(this.value);'  /></td>";
?>

在我的nonmembersdetail1.php代码中

echo ( $_POST['val'] );

我没有在php文件中获得价值。请有人帮帮我。谢谢你...

2 个答案:

答案 0 :(得分:1)

检查浏览器控制台,如果AJAX调用实际上被解雇,或者您之前收到任何错误。因为AJAX调用中没有错误,所以你应该在PHP的POST数组中获得val值。

答案 1 :(得分:0)

您是否考虑过,您使用变量result两次?在您激活ajax-call之前,在您的代码中有一个,并且在ajax-calls响应中。更改变量的名称,并告诉我们它是如何工作的。

function Calculate(val)
{

    var h = document.getElementById('xyz').textContent ;
    var amount = h * val;
    amount = amount.toFixed(2);
    document.getElementById('lblRes').innerHTML ='$'+ amount ;
    $('#ori_price').hide();

    $.ajax ({
        url: 'nonmembersdetail1.php',
        type : 'POST',
        data : {val : h},
        success: function( result ) {
            alert( result );
        }
    });
}