2012-07-10 108 views
1

我一直在使用$ .ajax()從服務器獲取一些數據,但由於與以前版本的系統不兼容(三星智能電視),我也必須實現XMLHttpRequest。我的問題是,使用jQuery時,responseXML返回[object Document],而XMLHttpRequest的responseXML返回[object XMLDocument]。由於我已經使用Documents實現了一切,有沒有辦法將XMLDocument對象或字符串對象解析爲Document?從xmldocument創建javascript文檔

任何幫助表示讚賞,我卡在這裏,不想重寫XMLDocument的一切。

謝謝!

+0

您的迴應是否明確聲明它是xml?你能不能簡單地得到答案來說出它的純文本?或者至少沿着這些路線。 – 2012-07-10 12:23:32

+0

是的,在這兩種情況下都明確地要求xml。實際上他們從服務器收到相同的HTTP 200 OK響應。我想我也可以作爲一個文本得到答覆,但是接下來我將不得不改變一切。 – 2012-07-10 12:31:59

+0

我的意思是服務器端,是明確設置文檔響應類型爲XML?如果是這樣,你是否有權訪問服務器端代碼,並且可以將其設置爲另一種響應類型? – 2012-07-10 12:33:22

回答

0

除了responseXML,你還應該有一個來自XMLHttpRequests的responseText屬性。我正在使用以下in a similar way

xhrObj.open('GET', scriptURL, false); 
xhrObj.send(''); 
var se = document.createElement('script'); 
se.type = "text/javascript"; 
se.text = xhrObj.responseText; 
document.getElementsByTagName('head')[0].appendChild(se); 
+0

但是這不返回文檔...它返回一個HTMLScriptObject。有沒有辦法創建一個文件? – 2012-07-10 12:58:11

0

原來,不同的瀏覽器返回不同的東西,但最後是一樣的。