MozTW 討論區
https://forum.moztw.org/

關於 Ajax
https://forum.moztw.org/viewtopic.php?f=13&t=14428
1 頁 (共 1 頁)

發表人:  toomore [ 2006-06-06, 11:31 ]
文章主題 :  關於 Ajax

我的 javascrtpi
在 Firefox 底下都正常
可是 IE 就只能動一次之後就不能動了

是 function createHttpRequest3() 的判斷有問題嗎?
有在研究 Ajax 的大大可以幫我看一下嗎? 感謝

引言回覆:
function createHttpRequest3() {
 if(window.XMLHttpRequest){ //Win Mac Linux m1,f1,o8 Mac s1 Linux k3 & Win e7用
  return new XMLHttpRequest() ;
 } else if(window.ActiveXObject){ //Win e4,e5,e6用
  try {
   return new ActiveXObject("Msxml2.XMLHTTP") ;
  } catch (e) {
   try { return new ActiveXObject("Microsoft.XMLHTTP") ;
    } catch (e2) {
     return null ;
    }
   }
 } else {
  return null ;
 }
}
function oo(){
 oj = createHttpRequest3();
 oj.open('GET','./phpinfo.php');
 oj.send(null);
 oj.onreadystatechange = function (){
  if(oj.readyState < 4){
   document.getElementById("pppp").innerHTML = 'Reading...';
  }
  if(oj.readyState == 4){
   document.getElementById("pppp").innerHTML = oj.responseText;
  }
 }
}

發表人:  kourge [ 2006-06-06, 21:21 ]
文章主題 : 

最後顯示完以後
document.getElementById("pppp").innerHTML = oj.responseText;
要記得這樣
oj.close();

發表人:  toomore [ 2006-06-06, 23:09 ]
文章主題 :  還是不行...

kourge 寫:
最後顯示完以後
document.getElementById("pppp").innerHTML = oj.responseText;
要記得這樣
oj.close();

Firefox 的 Javascript 主控台裡會顯示 oj.close is not a function

然後 IE 底下會出現網頁錯誤訊息 "物件不支援此屬性或方式"
然後都只能執行第一次 之後就不能動了....

有沒有人在玩 Ajax 的
在 IE 底下都很順利嗎?
我試過我同學的電腦連到我的網頁還是一樣發生同樣的事情... :?

發表人:  toomore [ 2006-06-07, 01:26 ]
文章主題 : 

toomore 寫:
然後 IE 底下會出現網頁錯誤訊息 "物件不支援此屬性或方式"
然後都只能執行第一次 之後就不能動了....


上面這個問題解決的
這篇文章有寫到 IE Ajax Error
不過其他的目前還是沒有解決... :cry:

發表人:  softcup [ 2006-06-07, 08:16 ]
文章主題 : 

調整了先後順序,這樣子試試看。
代碼:
function oo(){
 var oj = createHttpRequest3();

 oj.onreadystatechange = function (){
  if(oj.readyState < 4){
   document.getElementById("pppp").innerHTML = 'Reading...';
  }
  if(oj.readyState == 4){
   document.getElementById("pppp").innerHTML = oj.responseText;
  }
 };

 oj.open('GET','./phpinfo.php');
 oj.send(null);
}

發表人:  toomore [ 2006-06-07, 13:37 ]
文章主題 : 

softcup 寫:
調整了先後順序,這樣子試試看。


softcup 太感謝你了....
可以正常執行了...
不過好奇怪喔
原來 IE 的頭腦比較單純
所以
oj.onreadystatechange
要比
oj.open
oj.send
之前執行

發表人:  kourge [ 2006-06-08, 21:15 ]
文章主題 : 

toomore 寫:
有沒有人在玩 Ajax 的
在 IE 底下都很順利嗎?
我試過我同學的電腦連到我的網頁還是一樣發生同樣的事情... :?

現在的 Ajax developer 很少有人要產生 XMLHttpRequest 的時候還自己寫程式碼,通常都用 framework 來做...
比如說,Prototype
Prototype 非常方便,要產生一個 Ajax 要求,只要...
var blah = new Ajax.Request("url.php", {
method: "get",
parameters: "var1=val1&var2=val2",
onComplete: process
});
function process(originalRequest){
alert(originalRequest.responseText);
}

1 頁 (共 1 頁) 所有顯示的時間為 UTC + 8 小時
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/