以下ajax的代码, 请问我的ajax()为什么不放进aaa(url)里会出现xmlHttpReq.responseText;里的xmlHttpReq未定义,放进firefox运行会出现(xmlHttp is not defined),怎么回事,我记得之前写js,我不放进去也能执行的。
---------------------
<html>
<script language="JavaScript" type="text/javascript" >// Creates an XMLHttpRequest instance
function createXmlHttpRequestObject()
{
var xmlHttp;
// Try to instantiate the native XMLHttpRequest object
try
{
xmlHttp = new XMLHttpRequest();
}
catch(e)
{
try
{
xmlHttp = new ActiveXObject("Microsoft.XMLHttp");
}
catch(e) { }
}
if (!xmlHttp)
alert("Error creating the XMLHttpRequest object.");
else
return xmlHttp;
}//实例化
function aaa(url){
var xmlHttpReq;xmlHttpReq= createXmlHttpRequestObject();xmlHttpReq.open("GET","exec.php?id="+url, true);xmlHttpReq.send();xmlHttpReq.onreadystatechange=ajax;
}
function ajax(){
document.getElementById('falcon').innerHTML=xmlHttpReq.responseText;
}</script><a href="#" onclick="aaa('b')">bbb</a> <br>
<a href=javascript:aaa('a')>aaaa</a><div id='falcon'></div>
</html>
---------------------
<html>
<script language="JavaScript" type="text/javascript" >// Creates an XMLHttpRequest instance
function createXmlHttpRequestObject()
{
var xmlHttp;
// Try to instantiate the native XMLHttpRequest object
try
{
xmlHttp = new XMLHttpRequest();
}
catch(e)
{
try
{
xmlHttp = new ActiveXObject("Microsoft.XMLHttp");
}
catch(e) { }
}
if (!xmlHttp)
alert("Error creating the XMLHttpRequest object.");
else
return xmlHttp;
}//实例化
function aaa(url){
var xmlHttpReq;xmlHttpReq= createXmlHttpRequestObject();xmlHttpReq.open("GET","exec.php?id="+url, true);xmlHttpReq.send();xmlHttpReq.onreadystatechange=ajax;
}
function ajax(){
document.getElementById('falcon').innerHTML=xmlHttpReq.responseText;
}</script><a href="#" onclick="aaa('b')">bbb</a> <br>
<a href=javascript:aaa('a')>aaaa</a><div id='falcon'></div>
</html>
document.getElementById('falcon').innerHTML=xmlHttpReq.responseText;}
0 - (未初始化)还没有调用send()方法
1 - (载入)已调用send()方法,正在发送请求
2 - (载入完成)send()方法执行完成,已经接收到全部响应内容
3 - (交互)正在解析响应内容
4 - (完成)响应内容解析完成,可以在客户端调用了
if(xmlHttpReq.readyState==4){
if(xmlHttpReq.status==200){
document.getElementById('falcon').innerHTML=xmlHttpReq.responseText;}
}
var xmlHttpReq;当然不能在外部访问啦
你把 function createXmlHttpRequestObject()
{
var xmlHttp;中的var xmlHttp; 移到函数的外面