關於XMLHTTPRequest.open() IE8 拒絕訪問的問題。急,在線求救!!!


js腳本代碼如下




function updatehits(id){
insid=id;
http= getXMLHTTPRequest();
var reurl=window.location.pathname;
string=reurl.substring(reurl.lastIndexOf('/')+1,reurl.length);
if(reurl.substring(0, 3)=="data"){
alert(string);
string =reurl.substring(0, 3);
}
var url="updatehits?id="+insid+"&o="+string+""; 
if(http){  // 成功創建XMLHTTPRequest對象
http.open("POST",url,true);   // 與服務端建立連接(請求方式post或get,地址,true表示異步)
http.onreadystatechange=callback;  // 指定回調函數
http.send(null);  // 發送請求
}
}


// 創建XMLHTTPRequest對象
function getXMLHTTPRequest(){
   var xmlHttp;    
   if(window.XMLHttpRequest){    
       xmlHttp=new XMLHttpRequest();  // 非IE瀏覽器,用xmlhttprequest對象創建
    }else if(window.ActiveXObject){    
       xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");  // IE瀏覽器用activexobject對象創建
    }
  return xmlHttp;    
   
}
  
   
function callback(){    
 if(http.readyState==4){   
   if(http.status==200){    
     processResponse();    
   }
 }    
}    
// 處理服務器端響應
function processResponse(){  
  var text=http.responseText;
  var bool=text.substring(0,4);
  var u=text.substring(4,text.length);

  if(bool=="true"){
  if(u=="institutionsResume.jsp"){
  parent.window.location.href="jgnew.jsp?insid="+insid;
  }
  if(u=="res.jsp"){
  parent.window.location.href="teacher.jsp?userid="+insid;
  }
 
   }else{    
  
   }  
}




IE6 和FF 都可以正常運行,到ie8那就不行,提示說拒絕訪問
指定代碼段:http.open("POST",url,true);別說我沒baidu過,搜了好久也沒看到這樣的問題過。
哪位大俠幫我看看,急阿~~~~~~~在線等。

16 个解决方案

#1


關注中..。

#2


這個問題沒人知道嗎?

#3



坐等高人
能不能把JSP代碼和servlet代碼都發過來,讓我也試試呀,我的也是IE8

#4


看樣子是沒人理我了,哭....

#5


引用 4 樓 herrojay_one 的回復:
看樣子是沒人理我了,哭....

主要是沒看出什么問題- - 一般都這樣寫
你換成jquery試試吧

#6


引用 5 樓 zhouyuqwert 的回復:
引用 4 樓 herrojay_one 的回復:

看樣子是沒人理我了,哭....

主要是沒看出什么問題- - 一般都這樣寫
你換成jquery試試吧


主要是我不會jquery 不然那用這么苦命阿。

#7


唉,還是自己可靠,結貼了。
原因我知道了,需要的朋友再call我好了,呵呵。

#8


引用 7 樓 herrojay_one 的回復:
唉,還是自己可靠,結貼了。
原因我知道了,需要的朋友再call我好了,呵呵。

直接說出來撒。。。方便別人

#9


就是哇,我也是啊

#10


<html>
<title>test1</title>
<script type="text/javascript">
function loadXMLDoc()
{
  var xmlhttp;
  if(window.XMLHttpRequest)
   {
     xmlhttp=new XMLHttpRequest();
   }
  else
   {
     xmlhttp=new ActiveXObject("microsoft.XMLHTTP");
   }
  xmlhttp.onreadystatechange=Function()
  {
    if(xmlhttp.readyState==4 && xmlhttp.status==200)
    {
      document.getElementById("MyDiv").innerHTML=xmlhttp.responseText;
    }
  }
  xmlhttp.open("GET","test1.txt",true);
  xmlhttp.send();
}
</script>
<body>
  <div id="MyDiv">
    Let Ajax change this text!
    <button type="button" onclick="loadXMLDoc()">通過Ajax改變文字內容</button>
  </div>
</body>
</html>

#11


自從用了jquery之后,就再也沒用過這種方法實現ajax了。。

#12


lz什么原因造成的

#13


ie8 不支持 js中帶的HTTP://
只能給相對路徑../方法。

#14


引用 9 樓 my___dream 的回復:
就是哇,我也是啊

ie8 不支持 js中帶的HTTP://
只能給相對路徑../方法。

#15


引用 8 樓 zhouyuqwert 的回復:
引用 7 樓 herrojay_one 的回復:

唉,還是自己可靠,結貼了。
原因我知道了,需要的朋友再call我好了,呵呵。

直接說出來撒。。。方便別人



var url="../updatehits?id="+insid+"&o="+string+""; 
//這里只能這樣。
//不能
var url="http://127.0.0.1:8080/Text/updatehits?id="+insid+"&o="+string+""; 
//否則IE8 不認的

#16


[Quote=引用 7 樓  的回復:]
唉,還是自己可靠,結貼了。
原因我知道了,需要的朋友再call我好了,呵呵。
可以幫我解決下問題嗎?QQ:825145840 感謝!

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com