【问题标题】:Modify sorting in kendo Grid修改剑道网格中的排序
【发布时间】:2018-04-02 08:19:26
【问题描述】:

我有一个名为 'IdleTime' 的列,它的值有 '59d 173'、'23d 267' 等,代表 n 天和 t 时间。但我想按 UpdatedTime 对这一列进行排序,因为在排序时它认为 IdleTime 是字符串,因此这些值没有正确排序。

@(Html.Kendo().Grid(Model).Name("StudentModel")
    .Columns(column =>
    {
      column.Bound(p => p.ID).Width(30).EditorTemplateName("#=GetID(this)#");
      column.Bound(p => p.IdleTime).Width(30);
      column.Bound(p => p.UpdatedTime).Width(50);
    })
    .Selectable()
    .Sortable())

【问题讨论】:

  • 你问的是如何设置默认排序?你在使用 DataSourceRequest 吗?
  • 我想以 Razor View 格式使用本文 (stackoverflow.com/questions/23766764/…) 中提到的比较功能。
  • 基于this,它在包装器中仍然不可用,但您可以使用客户端示例来实现。

标签: kendo-ui kendo-grid kendo-asp.net-mvc


【解决方案1】:

似乎比较(在 JQuery Kendo 中)并不是解决 kendo MVC 包装器这个问题的唯一方法。为此,我使用了 ClientTemplate

column.Bound(p => p.UpdatedTime).Width(50).ClientTemplate("#=IdleTime#");

【讨论】:

  • 这对排序有何影响?
  • 列绑定到 UpdatedTime,因此它会按它排序,但仍会显示 IdleTime。抱歉,我知道这并没有解决我自定义排序的实际问题。我不得不使用这种方式,因为正如你所说,这不是在 Kendo Grid MVC 包装器上实现的
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多