【发布时间】:2014-09-10 07:26:25
【问题描述】:
我正在通过 AJAX 发送 post 请求,如下所示。
我总是收到 xmlhttp.readyState = 1 和 xmlhttp.status= 0 。 xmlhttp.responseText 总是空。
你能告诉我可能是什么问题吗?
我希望 xmlhttp.readyState==4 && xmlhttp.status==200
<script>
//Ajax to send request..
function sendPayment()
{
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()
{
alert(xmlhttp.readyState);// this always returns = 1
alert(xmlhttp.responseText) ; //this is always empty.
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
if (xmlhttp.responseText=='1')
{
alert('success');
}
}
}
xmlhttp.open("POST","payments/callSSL.php",true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send(Id=100);
return false;
}
</script>
HTML 部分
<input name="button" type="submit" id="button" value="Confirm" onclick="sendPayment()" />
【问题讨论】:
-
success警报永远不会显示? -
xmlhttp.readyState 总是返回 true,而 ajax 总是返回一个值。请指定您的ajax结果状态
-
@adeneo:是的。尽管我在
/callSSL.php文件中发送了一些输出,但我得到的只是空的 -
检查你的 callSSL.php ,你必须回显不返回你的结果
-
你不能从另一个域打电话检查这个stackoverflow.com/questions/23053349/…
标签: javascript php jquery html ajax