Получить значение записи из XML Store в EXT js
Я ExtJS для разработки GUI. Я использую XML Store для получения данных с сервера.
Мой XML выглядит следующим образом.
<meta>
<entry>x</entry>
<entry>Y</entry>
</meta>
<data>
<value>100</value>
<value>500</value>
</data>
Где X=100 и Y=500
Как я могу получить данные и значение из этого с помощью XMLStore?
1 ответ
Решение
Поскольку структура XML на самом деле не подходит для того, чего ожидают XML Store/Reader, я предлагаю вам самостоятельно проанализировать XML в более стандартный формат и затем загрузить данные, например, в JsonStore.
Парсинг кода: (записал его на моей голове, так что, возможно, потребуются некоторые корректировки...)
var data = [];
var q = Ext.DomQuery;
var entries = q.select('meta > entry', theXML);
var values = q.select('data > value', theXML);
for (var i = 0; i < entries.length; ++i) {
var recordData = {
entry: entries[i].firstChild.nodeValue,
value: values[i].firstChild.nodeValue
}
data.push(recordData);
}
Надеюсь, это будет полезно для вас...