【问题标题】:KendoUI Grid alter filter and sort in one refresh过滤和排序后的 Kendo UI Grid 一次刷新
【发布时间】:2013-02-25 12:52:07
【问题描述】:

我正在尝试设置过滤器和排序参数并一次更新我的网格,而不是两个单独的调用,例如:

grid.dataSource.filter({
    field: 'branchId',
    operator: 'eq',
    value: selectedBranchId
});
grid.dataSource.sort({
    field: 'id',
    dir: 'desc'
});

我试过了:

grid.dataSource.data({
    filter: {
      field: 'branchId',
      operator: 'eq',
      value: selectedBranchId
    },
    sort: {
      field: 'id',
      dir: 'desc'
    }
})
  grid.dataSource.read(); 
  grid.refresh(); 

这不起作用并在控制台中给我以下错误:

Uncaught TypeError: Cannot read property 'slice' of null in kendo.all.min.js:13

【问题讨论】:

    标签: javascript jquery kendo-ui kendo-grid


    【解决方案1】:

    要将多个操作合并为一个,请使用 query 方法。

    【讨论】:

      【解决方案2】:

      query 是您所需要的。

      另一种解决方法是间接设置过滤和排序,然后在需要时调用 fetch 方法:

      dataSource._filter = yourFilter;
      dataSource._sort = yourSort;
      dataSource.fetch();
      

      当您的数据源已经包含查询设置(例如 page、take、skip)时,第二种情况可能很有用。它们将被查询方法覆盖,但通过间接设置过滤/排序保持不变。

      【讨论】:

      • 这对我来说是一个更好的选择。查询破坏了我们的跳过和采取选项。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-12
      • 2014-06-08
      • 1970-01-01
      • 1970-01-01
      • 2019-03-18
      • 1970-01-01
      相关资源
      最近更新 更多