【问题标题】:How to customize Kendo date filter?如何自定义剑道日期过滤器?
【发布时间】:2017-08-07 09:44:50
【问题描述】:

我想为网格视图自定义剑道过滤器。为此,我使用以下代码。

.Filterable(filterable => filterable
    .Extra(false)
    .Operators(operators => operators
        .ForString(str => str.Clear()
            .StartsWith("Starts with")
            .IsEqualTo("Is equal to")
        )
        .ForDate(dt => dt.Clear()
        .IsGreaterThan("Is greater than")
        .IsLessThan("Is less than")
        .IsEqualTo("Is Equal to")
        ))
    )

此代码完美运行。但是在日期过滤器中只显示一个文本框。我想选择两个日期之间的数据。

如何在剑道网格日期过滤器中实现这一点?

【问题讨论】:

  • 创建两个字段?开始和结束?
  • 在剑道中,开始和结束没有任何选项。你能分享任何代码吗?
  • 对于字段,我的意思不是属性/方法。为什么不创建两个不同的日期时间选择器?
  • 我试过这个 .ForDate(dt => dt.Clear() .IsGreaterThan("大于") .IsLessThan("小于") .IsEqualTo("等于") ) .ForDate(dt => dt.Clear() .IsLessThanOrEqualTo("小于或等于") ))
  • 您似乎对过滤器和输入元素感到困惑。过滤器过滤特定输入元素的选择范围。由于您要定义一个时间跨度,在从开始日期到结束日期的范围内,您需要两个不同的DateTime 输入元素。不是两个不同的过滤器。

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


【解决方案1】:

以下解决方案对我有用。

.Filterable(filterable => filterable
    .Operators(operators => operators
        .ForString(str => str.Clear()
            .StartsWith("Starts with")
            .IsEqualTo("Is equal to"))

        .ForDate(dt => dt.Clear()
        .IsGreaterThanOrEqualTo("Begin Date")
        .IsLessThanOrEqualTo("End Date")))
        .Extra(true).Messages(mes => mes.Info("Show items between dates")))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-19
    • 1970-01-01
    • 2014-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多