Получить значение записи из 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);
}

Надеюсь, это будет полезно для вас...

Другие вопросы по тегам