JqG​​rid与Google Fusion Tables

时间:2010-11-30 02:21:55

标签: jquery jqgrid google-fusion-tables

尝试让jqGrid与Google融合表一起使用。

似乎无法在jqGrid中找到允许您控制数据来源的事件。

接受一个能更好地完成这项工作的等效javascript表引擎。

如果你可以链接到一个例子或在答案中提供一个例子,谢谢。


编辑:好的,这是我有多远

我知道如何让jqGrid请求Google融合表但我无法解析JSON。 我似乎找不到任何适合jqGrid的jsonreader部分的文档,它解释了每个变量的作用。

http://cablegate.politicswiki.ie/test.html是我目前所处的位置。

3 个答案:

答案 0 :(得分:1)

似乎有点灵活性:

http://www.trirand.com/jqgridwiki/doku.php?id=wiki:retrieving_data http://www.trirand.com/jqgridwiki/doku.php?id=wiki:colmodel_options

更糟糕的情况是,您可以将Google Fusion转换为脚本中的XML或JSON并以此方式呈现。

答案 1 :(得分:1)

这不是事件,而是财产。 请参见此处的示例:http://www.trirand.com/jqgridwiki/doku.php?id=wiki:retrieving_data 您可以将数据源定义为JSON,function,xml等。

答案 2 :(得分:0)

这应该有效:

jsonReader: {
    repeatitems: false,
    root: function (obj) { 
        var rows = new Array();
        for(var rowNum = 0; rowNum < obj.table.rows.length; rowNum++)
        {
            var row = new Object();
            for (var colNum = 0; colNum < obj.table.cols.length; colNum++) {
                row[obj.table.cols[colNum]] = obj.table.rows[rowNum][colNum];
            }
            rows.push(row);
        }
        return rows;
    },
    page: function (obj) { return 1; },
    total: function (obj) { return 1; },
    records: function (obj) { return obj.table.rows.length; }
}

并且不要忘记将name列的ident属性更改为id,因为这是Google Fusion Tables发送的名称,您可以将标签保留为如果你愿意的话ident