将变量从JS传递到AJAX到PHP

时间:2013-12-24 06:09:35

标签: javascript php ajax

以下是我的代码。

流程必须是:

- 单击按钮,将值传递给JS

-JS设为变量

- 需要将变量发送到PHP而不刷新页面(AJAX?)

- 需要在php中输出变量

有人能告诉我怎么做吗?

<a href="#modal-accept" data-toggle="modal"><button onclick="updateVar(2)" class="btn btn-acceptColor m-t-lg">Accept</button></a>
<script type="text/javascript">
function updateVar(profferRequestID){
var profferRequestID;
//pass to ajax then pass to php??
}
</script>     

<?php
//echo out that JS variable
echo $profferRequestID; 
?>

3 个答案:

答案 0 :(得分:0)

尝试这样的事情

使用jquery

javascript代码

var name = "John";
$.get( "your_file.php", { user_name: name},function( data ) {
    // on success perform action you want.
});

php代码

$user_name = $_GET['user_name'];

另一种方式 在javascript(未选中)

var name = "John";
var xmlhttp;
if (window.XMLHttpRequest)
{
    // code for IE7+, Firefox, Chrome, Opera, Safari
    xmlhttp=new XMLHttpRequest();
}
else
{
    // code for IE6, IE5
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
    {
        if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
         // on success perform action you want.
    }
    }
xmlhttp.open("GET","your_file.php?user_name="+name,true);
xmlhttp.send();

已编辑的代码

function updateVar(val){
    $.get( "path_to/your_file.php", { profferRequestID : val},function( data ) {
        // on success perform action you want.
    });
}

your_file.php

 $profferRequestID = $_GET['profferRequestID'];

答案 1 :(得分:0)

Oy公司。在我添加评论之前,我还需要6点。

请回答以下问题:

  1. 这是否必须跨浏览器兼容?
    • 如果是这样,您可能需要考虑使用jQuery JavaScript library.与jQuery抽象出来的AJAX有一大堆浏览器不一致。
    • 无论哪种方式,你都可以考虑使用jQuery,因为它是强大的AJAX库。
  2. 您想将PHP响应返回给您的JavaScript函数,还是将其显示在HTML页面的某个位置?
  3. 在您回答之后,我很乐意为您提供完整的答案。我正在尝试回馈StackOverflow社区。 :)

答案 2 :(得分:-1)

我不熟悉AJAX或PHP,但我知道在javascript中,你可以阅读/编辑innerhtml。我认为你最好的选择是创建一个隐藏元素,并使用它来存储你的变量。