0

サーバーから返されるjsonデータは次のようになります。

{
    "total": "3",
    "page": "1",
    "records": "21",
    "rows": [
        {
            "id": "6007",
            "cell": [
                "6007",
                "xxx",
                "",
                "22.2"
            ]
        },
        {
            "id": "6008",
            "cell": [
                "6008",
                "xxx",
                "",
                "22.2"
            ]
        },
        {
            "id": "6009",
            "cell": [
                "xxx",
                "xxx",
                "",
                "22.2"
            ]
        },
        {
            "id": "6011",
            "cell": [
                "6011",
                "xxx",
                "",
                "22.2"
            ]
        },
        {
            "id": "6012",
            "cell": [
                "6012",
                "xxx",
                "",
                "22.2"
            ]
        },
        {
            "id": "6013",
            "cell": [
                "6013",
                "xxx",
                "",
                "22.2"
            ]
        },
        {
            "id": "6014",
            "cell": [
                "6014",
                "xxx",
                "",
                "22.2"
            ]
        },
        {
            "id": "6015",
            "cell": [
                "6015",
                "xxx",
                "",
                "22.2"
            ]
        },
        {
            "id": "6016",
            "cell": [
                "6016",
                "xxx",
                "",
                "22.2"
            ]
        },
        {
            "id": "6017",
            "cell": [
                "6017",
                "xxx",
                "",
                "22.2"
            ]
        }
    ]
}

私はjqueryready関数でこのjqGrid宣言を使用しています:

 jQuery('#jqGrid1').jqGrid({
                caption: 'test grid',
                url: 'myurl',
                datatype: 'json',
                colNames: ["Column1", "Column2", "Weight", "NetWeight"],
                colModel: [
                    { "index": "Id", "width": 50, "name": "PartId" },
                    { "index": "Name","width": 100, "name": "CHNPartName" },
                    { "index": "Weight", "width": 75, "name": "Weight" },
                    { "index": "NetWeight", "name": "NetWeight"}
                ],
                viewrecords: true,
                loadError: jqGrid_aspnet_loadErrorHandler,
                pager:jQuery('#Pager1'),
                width: '640'
            });

しかし、応答でパーサーエラーが発生します、誰かが私を助けることができますか?ありがとう 。

4

1 に答える 1

0

サーバー応答のHTTPヘッダーのContent-Typeを正しく設定していないと思います。JSONデータの場合、RFC4627に対応する「application/json」である必要があります。静的ファイルを使用してテキストデータを保持する場合は、ファイル拡張子の名前を「.json」に変更してみてください。JSONデータをjQuery1.6.2で問題なく読み取ることができることを示すデモを見てください。

于 2011-07-11T10:08:27.653 に答える