我想DateTime
在我的剑道 UI 网格中有一个列。我在论坛上搜索过,但没有找到解决此问题的方法。
我的 TimeStamp 列字段定义如下:
TimeStamp: { type: "date" },
记录根据模板中指定的格式显示数据。但我希望能够更精确地过滤我的数据源。但是,目前我的过滤器只能按日期过滤。有没有办法过滤DateTime
而不是仅按日期过滤?
我被告知,目前这在 Kendo UI 中是不可能的。我知道这是个坏消息,但这是我问题的答案。
您可以实现它以在剑道网格列上使用模板,再创建一个属性并将该属性传递到剑道网格列的模板中。
像
timeStamp: { type: "date" },
timeStamp1: { type: "String" },
在模板中传递时间戳1
{
title: "Last Login",
width: 80,
template: '<span>#= timeStamp1#</span>',
field: "timeStamp",
type: "date"
},
它可以根据您的要求正常工作,并且排序将像数据库排序一样正常工作。
它的可能:
DeliveredDate: {
type: "datetime",
editable: false,
nullable: false
}
模板是:
{
field: "DeliveredDate",
title: "Delivered Date",
template: '#= kendo.toString(data.DeliveredDate,"dd/MM/yyyy") === null ? "--/--/----" : kendo.toString(data.DeliveredDate,"dd/MM/yyyy HH:mm") + " Hrs" #',
width: 60,
groupable: false,
sortable: true,
filterable: true
}
从您的 KendoGrid 数据库中使用 TimeStamp 格式数据的最简单方法。
在您的 HTML 文件中,使用来自 DB 的数据,如图所示。
<kendo-grid [data]="gridData">
<kendo-grid-column class="CreatedAt" field="CreatedAt" title="title"
[width]="120" [headerStyle]="{'background-color': '#36455a','color': '#fff'}"
[style]="{'background-color': '#36455a','color': '#fff'}">
<ng-template kendoGridCellTemplate let-dataItem>
{{dataItem.CreatedAt | date:"yyyy/MM/dd HH:mm:ss"}}
</ng-template>
</kendo-grid-column>
</kendo-grid>
PS:gridData 是我的 var 存储数据库中的数据。CreatedAt 是字段之一。