设置所选页码 - 剑道网格

时间:2017-11-14 11:23:13

标签: javascript jquery json kendo-grid

我正在使用kendo-telrik创建一个网格。在这假设我有100个数据。从json中我只有10个数据(假设第一页包含10个数据分页)。我一直在显示所有页面(100页数据共10页)。

当我点击另一个页面然后获取下一个10个数据并在ui中显示它。为此我使用kendo网格的页面更改功能并获取下一个10个数据。现在我想在网格中列出我选择的页面中的数据。

为此,我创建了样本 - http://jsfiddle.net/pporwal26/y6KdK/76/

 var jsonData = JSON.parse("{\"Report\":\"type1\",\"FileList\":[{\"owner\":\"machine-174\\\\admin\",\"path\":\"C:\\\\workarea\\\\WinTest1lakhfileinKB\\\\WinTest\\\\nGYh\\\\SMv\\\\U1P8FLx\\\\vMbhdo\\\\TgFSW\\\\42Ioulj0w.txt\"},{\"owner\":\"machine-174admin\",\"path\":\"C:\\\\workarea\\\\bada_data\\\\Employee Database - Copy (7) - Copy.mdb\"}],\"Count\":100,\"total\":100,\"page\":1}");
function nextData(page){
jsonData = JSON.parse("{\"Report\":\"type1\",\"FileList\":[{\"owner\":\"machine-170\\\\admin\",\"path\":\"C:\\\\workarea\\\\WinTest1lakhfileinKB\\\\WinTest\\\\nGYh\\\\SMv\\\\U1P8FLx\"},{\"owner\":\"machine-170admin\",\"path\":\"C:\\\\workarea\"}],\"Count\":100,\"total\":100,\"page\":"+page+"}");
createGrid(jsonData);
}
createGrid(jsonData);
function createGrid(jsonData){
$("#grid").kendoGrid({
   pageable: true,
   scrollable: true,
   page: jsonData.page,
   pageable: {
         pageSize: 2,
         refresh: true,
         change:function(e){
           nextData(e.index);
         }
     },
   dataSource: {
       serverPaging: true,
       schema: {
           data: "FileList",
           total: "total"

       },
       data: jsonData 
   }
});
}

在此示例中,当我单击更改事件时,它总是显示1页而不是我选择的页面。并且还希望在每个点击网格上始终创建新的不添加。我能做些什么?

1 个答案:

答案 0 :(得分:0)

我知道在createGrid(jsonData);函数内部调用nextData,你每次增加时都会创建一个表,这就会导致错误。你试过评论吗?

我个人从未使用过kendoGrid,所以如果我的回答不好,我会道歉,但是从网上看看,这似乎有用吗?

最糟糕的情况是,您确实需要进行更改,在这种情况下,您是否无法定位表中的数据并将其放在其他功能中?一种非常病态的做法是删除/销毁当前的一个以便创建一个新的。但我觉得它会起作用吗?