Javascript 为什么可以';我不能在ajax中使用POST方法获取参数吗?
下面是我尝试使用ajax的内容:Javascript 为什么可以';我不能在ajax中使用POST方法获取参数吗?,javascript,php,ajax,Javascript,Php,Ajax,下面是我尝试使用ajax的内容: var x=""; var xxx= setTimeout(myFunc, 7000); function myFunc(){ x=document.forms["form1"]["image"].value; if(x!=""){ var xhttp= new XMLHttpRequest(); xhttp.onreadystatechange=function(){ if(xhttp.readyState==4 &am
var x="";
var xxx= setTimeout(myFunc, 7000);
function myFunc(){
x=document.forms["form1"]["image"].value;
if(x!=""){
var xhttp= new XMLHttpRequest();
xhttp.onreadystatechange=function(){
if(xhttp.readyState==4 && xhttp.status==200){
var z= xhttp.responseText;
alert(z);
}
};
xhttp.open("POST", "test.php", true);
xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhttp.send("url="+x);
}
}
下面是test.php:
<?php
$a= $_POST["url"];
echo $a;
?>
但是警报(z)显示一些HTML文档,而不是URL。我做错了什么?如何更正它并从ajax获取参数?将以下更正放在js部件和
test.php
文件中:
- js部分:
... var params = "url="+ encodeURIComponenet(x); xhttp.open("POST", "test.php", true); xhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xhttp.setRequestHeader("Content-length", params.length); xhttp.send(params);
- test.php
<?php if (isset($_POST["url"]) && !empty($_POST["url"])) { $a = $_POST["url"]; echo $a; } ?>