[英]Jqgrid pagination with Restful web services
我在下面有一個要求; 我有一個jqgrid使用webservice(RESTful webservices)調用加載json數據。當表單加載時,我命中服務器並將數據加載到網格。如果我有50行,則網格僅加載50行。但是我使用了分頁,所以它將僅顯示10條記錄,然后單擊分頁中的next按鈕,將顯示其他10條記錄。但是我的要求是在formload上,我應該點擊server和restric以僅顯示10條記錄。顯示接下來的10行。是否可以共享任何樣本?
經典的RESTful Web服務不支持分頁。 因此,必須從服務器返回所有數據並使用客戶端分頁。 如果您只有50行數據,我建議您使用客戶端分頁。 您只需要在loadonce: true
包含loadonce: true
選項,所有這些都應該已經可以工作了。 通常,如果從服務器加載的數據loadonce: true
則建議使用loadonce: true
選項。 沒有首選客戶端分頁的確切行數限制。 大約有1000或10000行數據。 因此,如果確實有50行數據,則強烈建議使用。
如果確實需要實現RESTful服務的服務器端分頁(在非常大的數據集的情況下),則您的服務必須支持請求的其他參數 ,這些參數與資源URL無關。 例如,開放數據協議(OData)URI支持版本2.0(請參見此處 )開始,參數$orderby
, $skip
, $top
和$inlinecount
可以附加到URL上,以通知服務器返回按$orderby
排序的數據$orderby
。 根據$skip
和$top
參數的值,返回的數據應僅包含一頁排序的數據。 網址看起來像
http://host:port/path/SampleService.svc/Categories(1)/Products?$top=2&$orderby=Name
\______________________________________/\____________________/ \__________________/
| | |
service root URL resource path query options
舊答案提供了實現jqGrid的示例,該實現調用了開放數據協議(OData)Web服務。 我使用serializeGridData
回調填充$top
“理解” OData Web服務的$top
, $skip
, $orderby
和$inlinecount
。 由於在請求中使用了$inlinecount: "allpages"
,因此我基於從服務器返回的count
屬性使用了beforeProcessing
回調來返回total
屬性。 如果您使用的RESTful Web服務也支持OData,那么您可以使用相同的代碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.