2013-08-31 79 views
1

我正在使用w2ui w2ui.com來顯示網格。 當網格記錄存儲在本地HTML文件排序正在工作。使用json內容排序網格

但我想在json文件上動態使用這個函數。

我有這個JSON文件(test.json):

{ 
    total: 9, 
    page: 0, 
    records: [ 
     { recid: 11, fname: 'John', lname: 'Doe', email: '[email protected]', sdate: '4/3/2012' }, 
     { recid: 12, fname: 'Stuart', lname: 'Motzart', email: '[email protected]', sdate: '4/3/2012' }, 
     { recid: 13, fname: 'Jin', lname: 'Franson', email: '[email protected]', sdate: '4/3/2012' }, 
     { recid: 14, fname: 'Susan', lname: 'Ottie', email: '[email protected]', sdate: '4/3/2012' }, 
     { recid: 15, fname: 'Kelly', lname: 'Silver', email: '[email protected]', sdate: '4/3/2012' }, 
     { recid: 16, fname: 'Francis', lname: 'Gatos', email: '[email protected]', sdate: '4/3/2012' }, 
     { recid: 17, fname: 'Mark', lname: 'Welldo', email: '[email protected]', sdate: '4/3/2012' }, 
     { recid: 18, fname: 'Thomas', lname: 'Bahh', email: '[email protected]', sdate: '4/3/2012' }, 
     { recid: 19, fname: 'Sergei', lname: 'Rachmaninov', email: '[email protected]', sdate: '4/3/2012' } 
    ] 
} 

我得到它在電網負荷,使用此代碼:

$('#grid-customers').w2grid({ 
    name: 'grid-customers', 
    url: 'data/test.json', 

    columns: [    
     { field: 'recid', caption: 'ID', size: '50px', sortable: true, attr: 'align=center' }, 
     { field: 'lname', caption: 'Last Name', size: '30%', sortable: true }, 
     { field: 'fname', caption: 'First Name', size: '30%', sortable: true }, 
     { field: 'email', caption: 'Email', size: '40%' }, 
     { field: 'sdate', caption: 'Start Date', size: '120px' }, 
    ] 

}); 

,但我不能對它進行排序或搜索網格內的內容。 每當我點擊網格標題(用於列排序)時,我會看到排序箭頭和一個名爲「正在刷新...」的彈出窗口,但列不會被排序。

回答

1

從網站:

如果數據是本地的,電網將執行本地排序。如果數據是 遠程,網格將提交排序字段到服務器端。

這意味着,如果你使用url屬性該插件將嘗試發送排序命令到遠程數據源,並期望它做從外部來源(甚至是靜態文件)加載數據工作。

兩個選項你是:

  1. 將數據移動到你的頁面正在研究允許本地排序
  2. 使用服務器支持的頁面,可以接收排序命令並返回格式化數據插件期望的方式
+0

我想你也可以使用單獨的自定義$ .json()函數獲取內容,然後將其作爲「本地」數據呈現給此w2grid?沒有? – funkwurm

+0

@Eric Tung有一個教程可以通過POST方法處理服務器端的JSON排序嗎? – Mike

+0

@funkwurm可能是一個解決方案,但我想使用保存/刪除按鈕和函數從w2grid – Mike