0

我想使用 php 在剑道 ui 中进行服务器端分页。所以有人知道该怎么做吗?我在网格中确实喜欢 serverpaging=true。对于服务器端逻辑,我需要选择哪个页码,这样我就可以像 pagenumber*perpage 一样计算并通过查询获取该记录。但是如何将选定的页码传递给服务器端呢?

var crudServiceBaseUrl = "<?=base_url()?>",
                 dataSource = new kendo.data.DataSource({
                   transport: {
                    read:  {
                        url: crudServiceBaseUrl+"did_grid_list",
                        type:"GET",
                        dataType: "jsonp"
                    },
 serverPaging: true,
 pageSize: 20,
                schema: {
                    total: function(data) { console.log(10034); return 10034; },
                    model: {
                          id: "id",     
                        fields: {
                            did: { validation: { required: true,max:9 } },
                                }
                               }
                             }
                         });

上面的代码是我的视图文件。控制器端就像

$json_data = array();
            $count_all = count($this->dids_model->did_get($action));    
        $page_no = $_GET['page']; 

        $json_data['page'] = $page_no;          
        $json_data['total'] = ($count_all>0) ? $count_all : 0;

         $perpage = 20;
         $start = ($page_no-1) * $perpage;
         if($start < 0 )
         $start = 0;
                $result = $this->dids_model->did_get($action,$start,$perpage);
4

1 回答 1

1

请查看serverPaging文档。它向您显示您将在请求中收到的参数,涉及:

  1. take: 包含要检索的记录数
  2. skip:从数据集前面开始读取多少条记录
  3. page: 当前页数据的索引
  4. pageSize: 每页的记录数
于 2013-01-22T10:08:38.287 回答