2012-03-08 61 views
1

我在CLOUD9 IDE這樣定義一個XMLHttpRequestXMLHttpRequest未在Cloud9 IDE中定義?

var xhr = new XMLHttpRequest(); 

但它提示一個錯誤,說ReferenceError: XMLHttpRequest is not defined。在Cloud9 IDE中定義了XMLHttpRequest

謝謝!

回答

3

如果您通過「調試」按鈕運行您的JavaScript文件,那麼它將在node.js中執行,其中不包含XMLHttpRequest(因爲它是瀏覽器功能)。

如果您正在開發的文件是客戶端文件,而是通過「預覽」按鈕打開引用js文件的HTML頁面。

否則,您可以使用模仿瀏覽器行爲的node-XMLHttpRequest或使用其他服務對nodejs的請求的去因素標準request

0

我知道這是前一段時間問過的,但如果遇到同樣的問題,這裏是如何解決它。

在您嘗試使用它創建對象之前,您需要首先在函數中定義XMLHttpRequest。

下面是一個例子:

//Define your method reference 
function createXMLHttpRequest() 
    { 
    try 
    { 
     return new XMLHttpRequest(); 
     } catch(e) {} 
    try 
    { 
    return new ActiveXObject("Msxml2.XMLHTTP"); 
    } catch (e) {} 
    alert("Sorry, the XMLHttpRequest is not supported"); 
    return null; 
    } 

//現在可以開始與所定義的createXMLHttpRequest()

var xhr = new XMLHttpRequest(); 

function oHttp_readyStateChange() 
{ 
if (oHttp.readyState == 4) 
{ 
if (oHttp.status == 200) 
{ 
    alert(oHttp.responseText); 
} 
else { 
    alert("The server returned a status code of " + oHttp.status); 
} 
} 
} 
oHttp.open("GET", "http://myWebsite/Myfile.sql", true); 

oHttp.onreadystatechange = oHttp_readyStateChange; 

oHttp.send(null); 
創建對象