【发布时间】:2010-03-05 00:34:16
【问题描述】:
我之前使用 javascript 和 PHP 实现了更复杂的 AJAX,但由于某种原因,这无法正常工作。这几乎是直接从 W3 示例中复制而来的。
var xmlhttp;
function changeLoc(str)
{
xmlhttp=GetXmlHttpObject();
if (xmlhttp==null)
{
alert ("Browser does not support HTTP Request");
return;
}
var url="action.php";
url=url+"?q="+str;
url=url+"&sid="+Math.random();
xmlhttp.onreadystatechange=stateChanged;
xmlhttp.open("GET",url,true);
xmlhttp.send(null);
}
function stateChanged()
{
if (xmlhttp.readyState==4)
{
alert(xmlhttp.responseText);
}
}
function GetXmlHttpObject()
{
if (window.XMLHttpRequest)
{
// code for IE7+, Firefox, Chrome, Opera, Safari
return new XMLHttpRequest();
}
if (window.ActiveXObject)
{
// code for IE6, IE5
return new ActiveXObject("Microsoft.XMLHTTP");
}
return null;
}
还有简单的action.php
<?php
echo 'here';
?>
从 html 页面上的链接调用函数 changeLoc。它进入 readyState = 4 条件,但警报为空白。我知道这很简单,但我找不到。
谢谢。
【问题讨论】:
-
您是否尝试过通过浏览器直接调用请求的目标?确保调用的目标返回预期的结果。换句话说,在想知道它为什么坏之前确保电视已插上电源......
-
是的,正在导航到 action.php echo 的“这里”