2013-11-04 56 views
2

我使用ExtJS 4.2。什麼是讀取本地XML文件的最簡單方法?我知道可以使用商店和模型,但我更喜歡其他方式。有沒有可能使用Ext.Ajax.Request?如何在ExtJS中讀取本地XML文件?

例如,這是我的XML文件內容:

<LocaleText> 
    <Item> 
    <CTRO_CONTROLID>lblLoginTitle</CTRO_CONTROLID> 
    <CTRO_CONTROLTYPE>label</CTRO_CONTROLTYPE> 
    </Item> 
    <Item> 
    <CTRO_CONTROLID>cboLoginLanguage</CTRO_CONTROLID> 
    <CTRO_CONTROLTYPE>combobox</CTRO_CONTROLTYPE> 
    </Item> 
</LocaleText> 

我如何獲得每個項目節點的數據?

回答

3
  1. 您可以使用在Ext.Ajax.requestresponse.responseXML用於獲取XML類型的響應。
  2. ,你可以使用Ext.DomQuery類從XML中獲取數據了

例子:

Ext.Ajax.request({   
    url: '/your/url/here/test.xml',    
    success: function (response, options) { 
     var object = response.responseXML; 
     var test = Ext.DomQuery.select('Item', object); 
     console.log('test', test); 
    } 
});
+0

隨着ExtJS的3.4和IE7我response.responseXML永遠是空的。它當然會在更高版本的IE和其他瀏覽器中工作。奇怪的是response.responseText有xml字符串。所以最後我用window.DOMParser把它加載到一個xmlDoc中(如果IE使用的是loadXML)。 – goodies4uall