我试图发送一些信息到一个php文件并显示返回的结果。首先,我没有收到来自php文件的任何结果,即xmlhttp.responseText
没有任何值。我尝试了'something else'
而不是responseText,这没有什么区别。但是当我注释掉//if (xmlhttp.readyState==4 && xmlhttp.status==200)
时,结果会短暂出现。 我做错了什么?为什么我有Ajax通信问题?
Ajax代码看起来是这样的:
var div = 'display';
var xmlhttp;
if (window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
else
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
writeBack (div, xmlhttp.responseText+'something else', 'red');
}
}
xmlhttp.open("POST","update_profile2.php",true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send("rr="+id);
PHP代码:
..
if(isset($_POST['rr']))
{
die('connection made');
}
..
我在AJAX上遇到的每个问题通常都是通过尝试使用表单中的“提交”按钮提交AJAX请求而导致的。如果你这样做,确保你停止.submit()....另外,如果你使用jQuery,你的AJAX代码看起来会好得多:) – donutdan4114 2012-03-17 16:14:59
神圣的废话,我只是浪费了整整一天,因为它?谢谢@ donutdan4114,它的工作。 – 2012-03-17 16:18:25
我已经提交我的评论作为正确的'绿色复选标记'的答案。 – donutdan4114 2012-03-17 17:38:06