0

これは、Fusion Tables のベータ版で動作する私のコードです (以下は、Oleg が昨年私を助けてくれた jqGrid コードの一部です)。

jsonReader: {
repeatitems: false,
cell: "", // the same as cell: function (obj) { return obj; }
root: "table.rows",
page: function (obj) { return 1; },
total: function (obj) { return 1; },
records: function (obj) { return obj.table.rows.length; }
},

Google から返された古い JSON データは次のとおりです。

jQuery16406014587786572121_1350317794100(
{"table":
    {
    "cols":
        ["id","latitude","longitude","name","address_line_1","address_line_2","address_line_3","postcode"],
    "rows":
        [[1234,"55",-1.5, --etc

Google の新しい API を使用すると、返される JSON は次のようになります。

{
"kind": "fusiontables#sqlresponse",
"columns": [
    "id",
    "latitude",
    "longitude",
    "name",
    "address_line_1",
    "address_line_2",
    "address_line_3",
    "postcode"
],
"rows": [
    [
        "1234",
        "55",
        -1.5,
        "Name One",
        "Road 1",
        "Road 2",
        "Sunderland",
        "SR1 1AA"
    ],

「ルート」がないようで、jsonReader をこの新しい JSON で動作させる方法がわかりませんでした。他の人がこれに遭遇したかどうかを確認するために Google を周りに持っていましたが、1 つまたは 2 つの未回答のヒットしかありません。ジャバ。誰でも私を助けてもらえますか?

4

1 に答える 1

0

JSON応答から「テーブル」部分が削除されているだけです。だから私はあなたが次のことを試すことができると思いますjsonReader

jsonReader: {
    cell: "",
    page: function (obj) { return 1; },
    total: function (obj) { return 1; },
    records: function (obj) { return obj.rows.length; }
}

さらに、列定義に含めるid: 0jsonReader、列定義に使用key: trueでき"id"ます ( colModel)。

repeatitems: falseところで、それは古い形式のデータの正しい設定ではないと思います。

于 2012-10-15T18:00:24.127 に答える