问题描述
function sendRequest(url){ window.alert("执行到此了---sendRequest(url)函数"); createXMLHttpRequest(); XMLHttpRequest.Open("GET",url,true);//报错行!!!!! XMLHttpRequest.onreadystatechange=callBack; XMLHttpRequest.send(null);XMLHttpRequest.Open("GET",url,true);改成如下也不行XMLHttpRequest.open("GET",url,true);请高手们帮个忙,这段代码在和firefox中均报错说:XMLHttpRequest.Open is not a function在IE7 中报错说:对象不支持此属性或方法 问题补充:服务器端是用 out.println(responseText); out.close();能打印responseText的值。以下是jsp页面脚本完整代码,<script type="text/javascript" > var XMLHttpRequest; function createXMLHttpRequest(){ window.alert("执行到此了---createXMLHttpRequest()函数"); if(window.ActiveXObject)//ActiveXObject对象到找到的时候返回的是真,否则是假 { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");//这个是使用IE的方法创建XmlHttp } else if(window.XMLHttpRequest) { xmlHttp=new XMLHttpRequest();//这个是使用非IE的方法创建XmlHttp } } function callBack(){ window.alert("执行到此了---callBack()函数"); if(XMLHttpRequest.readyState==4){ if(XMLHttpRequest.status==200){ document.getElementById("result").innerHTML=XMLHttpRequest.ResponseText; window.alert("返回值是:"+ XMLHttpRequest.ResponseText); } } } function sendRequest(url){ window.alert("执行到此了---sendRequest(url)函数"); createXMLHttpRequest(); XMLHttpRequest.open("POST",url,true); XMLHttpRequest.onreadystatechange=callBack; XMLHttpRequest.send(null); } function checkUsername(){ window.alert("您输入的用户名是:"+ $F(username)); window.alert("执行到此了---checkUsername()函数"); var name=document.getElementById("username").value; sendRequest("CheckUsername?username="+name); }</script>问题补充:谢谢 ThinkingInAll不过 XMLHttpRequest.responseText 返回的结果是一连串 ??????问题补充:还有 window.alert("执行到此了---callBack()函数"); 中的 “执行到此了---callBack()函数”这句话显示了三遍
解决方案
createXMLHttpRequest的function名称改掉,我知道,他想要覆盖系统方法不要这样做,改成createXMLHttp()??????这个问题是乱码,google下还有,可以给分了!!!!!!!!!!!!!!!!!!!!!!!!
解决方案二:
var XMLHttpRequest; 改为var xmlHttp;
解决方案三:
var XMLHttpRequest; function createXMLHttpRequest(){ if(window.ActiveXObject){ xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } else if(window.XMLHttpRequest) { xmlHttp=new XMLHttpRequest();//这个是使用非IE的方法创建XmlHttp } } 首先你怎么变量名和系统变量一样都叫XMLHttpRequest?然后,你明显是xmlHttp,XMLHttpRequest当然是null
解决方案四:
XMLHttpRequest那里拿到的?全局?window.XMLHttpRequestnew XMLHttpRequest();window.ActiveXObjectnew ActiveXObject("Microsoft.XMLHTTP");