我用这个把我的头撞在墙上。我的问题的答案应该为herehere,并且我不想发布重复的内容。但是由于某种原因,我的代码虽然看上去与这些示例完全相同,但却无法正常工作。

我试图通过xmlhttprequest将ID从Javascript函数传递给PHP函数。这是我的Javascript函数:

function acceptRequest(id_Request)
{
var xhttp = new XMLHttpRequest();
xhttp.open("POST", "acceptRequest.php", true);
xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhttp.onreadystatechange = function()
{
    if (xhttp.readyState == 4 && xhttp.status == 200)
    {
        alert("Request accepted.");
    };
};
xhttp.send("id_Request="+id_Request);
}


我的PHP文件acceptRequest.php如下所示:

<?php
echo $_POST['id_Request'];
?>


发生的情况是Javascript函数确实发送了警报:“请求已接受”。但是,PHP函数不会回显任何内容。我在这里想念什么???

最佳答案

我想问题是您的函数没有传递任何ID。我确定在您的php / javascript中。您要传递的ID在某些输入框中。

然后在您的js函数中,您可以说

变量ID = document.getElementById(“ id-of_input”)。value;

然后,您可以将此添加到您的Ajax请求。

我还注意到,您的Ajax没有收到来自php的响应。

 if(xmlhttp.readyState == 4 &&.      xmlhttp.status == 200){
   document.getElementById(where).innerHTML = xmlhttp.responseText;


}

在您的情况下,它是xhttp.responseText;

该行仅表示您希望显示Ajax请求结果的位置。

07-24 19:03
查看更多