2010-01-28 1 views
0

Я пытаюсь разобрать подачу ATOM и отображать соответствующие части, которые мне нужны. После выполнения некоторых поисков, я не мог найти способ сделать это в додзё, так что я написал эту реализацию, чтобы получить, в то же время (вар XML содержит фид атом):Анализ содержимого ATOM в Dojo?

var names = this.getArray(xml.getElementsByTagName("name")); 
var contents = this.getArray(xml.getElementsByTagName("content")); 
var emails = this.getArray(xml.getElementsByTagName("email")); 
var pubTimes = this.getArray(xml.getElementsByTagName("published")); 

getArray: function(data) { 
    var theArray = []; 
    dojo.forEach(data, function (entry) { 
     theArray.push(entry); 
    }); 
    return theArray; 
} 

Эти массивы затем используются для печати форматированной версии фида ATOM. Я новичок в Javascript и Dojo, и я уверен, что есть лучший/простой способ проанализировать XML.

Заранее спасибо.

ответ

0

Я понимаю, что это старый пост, но я думал, что добавлю ответ, если кто-то споткнутся о нем, как я только что сделал.

Я делаю следующее, когда у меня есть канал атом:

// Build xml feed from a document element (in this case `xml`) 
var feed = new dojox.atom.io.model.Feed(); 
feed.buildFromDom(xml); 

// Convert to json 
var jsonString = dojo.toJson(feed, true); 
var jsonObj = JSON.parse(jsonString); 

Тогда я могу легко использовать jsonObj.*key*, чтобы получить или установить данные.