从YQL生成的JSON数组中获取第n行

时间:2011-11-17 19:12:50

标签: arrays json yql

我正在使用YQL从Google电子表格中获取和显示数据,如下所示:

http://jsfiddle.net/weCve/1/

我想显示多个查询的复合YQL查询的结果,并在单独的无序列表中显示结果。

我的复合查询是here。 这里有一个小提琴:http://jsfiddle.net/svh2r/1/

我的问题是,为了让它占据某一行,我该怎么办呢?

$.each(data.query.results.results.row, function (i, item) {

我以为会是

data.query.results.results.row[1]

但这不起作用。

1 个答案:

答案 0 :(得分:1)

data.query.results.results是一个数组,包含来自不同查询的每个结果集。您可以通过data.query.results.results[n] n 012(与您的三个查询相对应)单独访问它们。

要遍历第二个查询的结果(结果数组中的偏移1),您可以这样做:

$.each(data.query.results.results[1].row, function (i, item) { … });

使用两个$.each循环遍历所有结果中的所有行可能(或可能没有用)。

$.each(data.query.results.results, function (i, results) {
    $.each(results.row, function (i, item) {
         // do something
    });
});

以下是对示例代码的修改,修改为构建三个列表 - http://jsfiddle.net/XfBsj/