首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

Java Web基础有关问题,XMLHTTPRequest使用有关问题

2013-01-12 
Java Web基础问题,XMLHTTPRequest使用问题刚学XMLHTTPRequest的使用,试着发一个请求,然后输出响应的内容,

Java Web基础问题,XMLHTTPRequest使用问题
刚学XMLHTTPRequest的使用,试着发一个请求,然后输出响应的内容,但点击按钮后不输出响应的内容,求大神指教:急,QQ:907600323
<html>
  <head>
    <title>SetRequest.html</title>
<script type="text/javascript">
    function set(){ 
    alert("5555");
    var myRequest=null;
    if (window.XMLHttpRequest) { myRequest=new XMLHttpRequest() }
    else if (window.ActiveXObject) { myRequest=new ActiveXObject("Microsoft.XMLHTTP") } 
    if(myRequest){
       myRequest.open("GET","http://localhost:8080/webdemo/servlet/FirstServlethttp",false);
       myRequest.send(null);}
  }
  alert(myRequest.responseText);
  </script>  

  </head>
  
  <body>
    This is my HTML page. <br>
    <input type="button" value="发送请求" onclick="set()">
  </body>
</html>
[解决办法]


<script language="javascript">
        var XMLHttpReq = false;
        
        //创建XMLHttpRequest对象
        function createXMLHttpRequest(){
         if(window.XMLHttpRequest){
         XMLHttpReq = new XMLHttpRequest();
         }else if(window.ActiveXobject){
         try{
         XMLHttpReq = new ActiveXobject("Msxm12.XMLHTTP");
         }catch(e){
         try{
         XMLHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
         }catch(e){}
         }
         }
        }
        //发送请求函数
        function sendRequest(url){
         createXMLHttpRequest();
         XMLHttpReq.open("GET",url,true);
         XMLHttpReq.onreadystatechange = processResponse;   //指定回调函数
         XMLHttpReq.send(null);   //发送请求
        }
        //处理返回信息函数
        function processResponse(){
         if(XMLHttpReq.readyState == 4){     //判断对象状态
         if(XMLHttpReq.status == 200){
         //信息已经成功返回,开始处理信息
         alert(XMLHttpReq.responseXML.getElementsByTagName("name")[0].firstChild.nodeValue);


         }else{
         //页面不正常
         alert("页面不正常");
         }
         }
        }
  </script> 




 <body>
    This is my HTML page. <br>
    <input type="button" value="发送请求" onclick="sendRequest('url')">
  </body>





[解决办法]

/**
 * @see 建立一个xmlHttp(兼容的浏览器:IE6,IE7,IE8,火狐,谷歌,360,还有手机上的浏览器)
 */
var xmlHttp = false;
function createXmlHttp() {
if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
if (xmlHttp.overrideMimeType) {
xmlHttp.overrideMimeType("text/xml");
}
} else {
if (window.ActiveXObject) {
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
}
}
if (!xmlHttp) {
window.alert("\u8bf7\u4f7f\u7528IE\u6d4f\u89c8\u5668!");
}
}
/**
 * @see 发送ajax请求(post)
 * @param url 需要访问的url
 * @param param 参数列表, 比如:"param=abc&random=" + Math.random()
 * @param method 回调的方法
 */
function sendRequest(url, param, method) {
createXmlHttp();
xmlHttp.onreadystatechange = eval(method);
xmlHttp.open("POST", url, true);
xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xmlHttp.send(param);
}
/**
* @see ajax的回调函数
* @param result 返回的结果
* @param callBack 原来的回调函数
*/
function ajaxCallBack(result, callBack) {
if (null != result && result != "") {
var returnType = result.split("\u2605")[0];
var returnValue = result.split("\u2605")[1];
if (returnValue == "null") {
callBack(null);
} else {
var backObject = null;
if (returnType == "string") {
backObject = new String(returnValue);
} else if (returnType == "boolean") {
backObject = eval(returnValue);
} else if (returnType == "int") {
backObject = parseInt(returnValue);
} else if (returnType == "float") {
backObject = parseFloat(returnValue);
} else if (returnType == "object" 
[解决办法]
 returnType == "array" 
[解决办法]
 returnType == "objectArray") {
backObject = eval("(" + returnValue + ")");
}
callBack(backObject);
}
} else {
callBack();
}
}

------解决方案--------------------


代码没问题,在ie上成功执行了。如果你说的没响应是指没alert回复的内容的话,原因是你把alert写到函数外面了Java Web基础有关问题,XMLHTTPRequest使用有关问题

热点排行