kendo-ui - kendo ui网格过滤器,服务器中的排序和分页

标签 kendo-ui kendo-grid

我正在使用剑道网格并希望在服务器中执行过滤、排序和分页。我知道我应该添加到数据源:

serverPaging: true,
serverSorting: true

但是我如何告诉网格/数据源它应该使用哪个 url 进行排序、过滤等。
如果我想自己执行排序怎么办?我想使用剑道提供的控制,但我自己去服务器。是否有像“sortTriggered”这样的事件,我可以调用“prevntDefault”或类似的东西......我不知道。

最佳答案

看看这个样本。它使用 Windows Azure 的 MobileServices javascript api,但向您展示了如何自己处理服务器分页和排序。

http://jsbin.com/efeKiwO/11/edit

在数据源的传输函数上,每个方法(读取、更新、创建、销毁)都可以配置为一个函数(这是读取函数,它处理任何排序和分页)。

read: function(options) {
        // Get the table
        var table = client.getTable("Customer");

        // Build base query
        var query = table.includeTotalCount();

        // Add paging
        if(options.data.skip !== undefined && options.data.take !== undefined) {
          query = query.skip(options.data.skip).take(options.data.take);
        }

        // Add sorting
        if(typeof options.data.sort !== "undefined" && options.data.sort !== null) {
          for(var i = 0; i< options.data.sort.length; i++) {
            if(options.data.sort[i].dir === "desc") {
              query = query.orderByDescending(options.data.sort[i].field);
            }
            else {
              query = query.orderBy(options.data.sort[i].field);
              }
          }
        }

        var promise = query.read();

        promise.done(function(data) {
          options.success(data);
        });
      },

在该功能中,您可以做任何您喜欢的事情。您可以进行 $.getJSON 调用、$.ajax 调用或其他任何您想做的事情,而不是使用像这个示例这样的 javascript 库。该函数的参数对象将包含分页、排序和过滤所需的一切。获得数据后,只需调用 options.success(dataSet);使用您正确排序/分页的数据集,您的网格将绑定(bind)到它。

关于kendo-ui - kendo ui网格过滤器,服务器中的排序和分页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21603848/

相关文章:

javascript - Kendo 网格插入带有自定义类的新行

kendo-grid - 如何在 Kendo Angular 6 Grid 中隐藏选定的组列,

javascript - Kendo Grid 未在 Web API 中调用 HttpDelete 方法

javascript - Vue 属性定义警告,即使它是在实例上定义的

Javascript - 动态添加的复选框在 Kendo Panelbar 标题中没有按预期工作

javascript - 如何在 Javascript 中加载 KendoGrid 的最后一页?

asp.net-mvc-4 - Kendo UI 窗口 + PartialView

javascript - Kendo UI 堆叠条形图自定义工具提示

javascript - Kendo ui有面包屑导航菜单吗

kendo-ui - 如何确定在 javascript 中调用 (Kendo) grid.SaveChanges() 后是否存在验证错误