2012-08-14 25 views
3

我想用jqgrid製作靜態json文件的一個很好的視圖,並且我在JavaScript中總是初學者。我做了一個簡化的文件,但是當我查看日誌時,jqGrid正在嘗試在服務器上執行查詢。有沒有可能與靜態json一起使用jqGrid?如何使用jqGrid查看靜態json?

我的測試文件:

http://schwehr.org/NGDC_DEMs.json

而且我看到這在日誌中:

http://schwehr.org/NGDC_DEMs.json?_search=false&nd=1344908237004&rows=20&page=1&sidx=&sord=asc

這是行不通的。是否可以在瀏覽器中輕鬆完成所有這些操作?

文件實在是無聊:

[ 
    { 
     "title": "Elfin Cove MHHW", 
     "demid": 4230, 
    }, 
    { 
     "title": "Astoria V2", 
     "demid": 4090, 
    }, 
    { 
     "title": "South Padre Island", 
     "demid": 3984, 
    }, 
] 

謝謝! -kurt

回答

8

解決此問題的兩種方法。

首先讓你的JSON看起來像這樣

var data = { 
      "page": "1", 
      "records": "3", 
      "rows": [ 
       { "id": "83123a", Name: "Name 1"},//give your column names here 
       { "id": "83432a", Name: "Name 3"}, 
       { "id": "83566a", Name: "Name 2" } 
      ] 
     }, 

現在使用的數據類型的使用: 「jsonstring」 和datastr:數據。在這種情況下,您需要添加其他參數jsonReader:{repeatitems:false}。

第二種方法是使用數據類型「local」和data:data.rows。在這種情況下,將使用localReader來讀取data.rows數組中的數據。默認的localReader可以讀取數據。

您的演示的問題是herehere

+0

非常感謝這個例子!所以你真的必須構造數據來匹配jqGrid模型?這意味着我將要拉動完整的json並重新構建?例如這是我想建立一個表的實際靜態json:http://www.ngdc.noaa.gov/eds/json/NGDC_DEMs.json – 2012-08-14 17:30:36

+0

我看了你的json數據,你可以忽略這些兩個「頁面和」記錄「參數,因爲你的json數據是在」記錄「變量,這裏是」行「變量,所以不改變你的json,你可以添加jsonReader:{root:」records「,repeatitems:false} ,到代碼,現在通常是root:「rows」,我們指定了這個值,但是你的數據是在記錄中,所以你可以用這個去得到它? – 2012-08-14 17:56:34

+0

,我希望如果這對你有用,那麼你會標記它作爲答案? – 2012-08-14 17:57:27