處理XML數據我在javascript XML數據處理的新手。目前,我的Ajax調用服務器,服務器返回XML數據,我不知道如何解析XML數據得到一些價值。如何在JavaScript
我的Ajax調用:
$.ajax({
url: 'http://localhost:8080/someinterface/the-id',
type: 'GET',
async: false,
dataType: 'application/xml',
data: {id: 43},
success: function(data) {
//handle the data
},
error: function(xhr, status, error){
alert('error happens');
}
})
返回XML數據是這樣的:
<DOCUMENT>
<AGE>16</AGE>
<USERNAME>default user</USERNAME>
<SECURITYID>1111</SECURITYID>
...
如何解析XML數據獲得例如 「USERNAME」 在我的javascript?
------------ ------------編輯
我試圖用你提出的辦法,但現在我得到錯誤信息:
XML解析錯誤:沒有的元素中找到位置:MOZ-nullprincipal:{120e8c1d-5174-4e94-9ebb-2bffda80b170} 1號線,1列: ^
和Ajax調用結果的錯誤功能
------------------- 部分解決 ------------------------
最後,我發現原因是我的應用程序碼頭服務器上運行在localhost:,而我的AJAX請求這是對本地主機上運行Tomcat服務器上的XML數據:。由於域端口不同,我得到了這個問題。現在,當我將我的應用程序的Tomcat服務器並請求Tomcat服務器,我得到XML響應成功。
AJAX調用去獲得成功的功能,我用
success: function(data){
xmlDoc = $.parseXML(data);
$xml = $(xmlDoc);
$userName = $xml.find('USERNAME');
var userName = $userName.text();
alert('1');
alert(userName);
}
我得到警報(「1」)在我的瀏覽器,但我沒有得到警報(用戶名),我不知道爲什麼......所以我把這裏的「部分解決」,所以...爲什麼我沒有得到我的用戶名警報..
@Mallon:你使用了哪一個。什麼是我使用的jQuery版本? – Amitabh 2011-04-12 14:10:08
嗨,我已經嘗試了所有建議的方法,也嘗試過直接警告數據,例如成功函數中的「alert(data)」,但是當它在瀏覽器中運行時,它會調用錯誤函數並彈出錯誤函數中的警報。 – Mellon 2011-04-12 14:13:57
@Mallon:你確定你的服務器沒有返回空的xml嗎? – Amitabh 2011-04-12 14:17:20