我正在尝试通过Google Apps脚本将http://indicador.eof.cl/rss XML Feed的外汇价值(所有这些)解析为Gooogle协作平台。
脚本如下>
function doGet(){
var response = UrlFetchApp.fetch("http://indicador.eof.cl/rss").getContentText();
var parsedResponse = Xml.parse(response, false);
var root = parsedResponse.getElement();
var entries = root.getElement('channel').getElements("item");
for (var i=0; i<entries.length; i++) {
var e = entries[i];
var title = e.getElement("title").getText();
var description = e.getElement("description").getText();
}
var app = UiApp.createApplication();
var TopVar = app.createHorizontalPanel();
TopVar.add(app.createLabel(title).setStyleAttribute("fontSize","12px"));
TopVar.add(app.createLabel(description).setStyleAttribute("fontSize","12px"));
app.add(TopVar);
return app;
}
问题是代码只给我带来了第一个值,不是所有这些,我忘了什么?
最诚挚的问候,
答案 0 :(得分:0)
尝试将TopVar.add(...);
行移到for循环中:
var app = UiApp.createApplication();
var TopVar = app.createHorizontalPanel();
for (var i=0; i<entries.length; i++) {
var e = entries[i];
var title = e.getElement("title").getText();
var description = e.getElement("description").getText();
TopVar.add(app.createLabel(title).setStyleAttribute("fontSize","12px"));
TopVar.add(app.createLabel(description).setStyleAttribute("fontSize","12px"));
}
实际上,我对google-apps-script一无所知。但是你当前的代码逻辑似乎有些偏差。它没有使用局部变量的值声明for循环(e
,title
和description
)。这些变量的值在每次迭代中都没有任何代码使用它。