我正在列中显示日期,如果是今天的日期,应该应用css类,如果没有,只显示日期。我试着这样解决:
template: "#if(Date == new Date()) {#<div class='todayClass'>#= kendo.toString(kendo.parseDate(Date, 'yyyy-MM-dd'), 'dd-MM-yyyy') #</div>#} else{#= kendo.toString(kendo.parseDate(Date, 'yyyy-MM-dd'), 'dd-MM-yyyy') #}#",
但是我收到错误:&#34;日期不是构造函数&#34;,是否有人知道如何解决它?感谢
答案 0 :(得分:3)
您可以为dataBound事件创建一个函数,该函数遍历网格的行并检查该特定字段。
function checkDates() {
var currentDate = new Date();
currentDate = currentDate.setHours(0, 0, 0, 0); // eliminate the time from the date
dataView = this.dataSource.view();
for (var i = 0; i < dataView.length; i++) {
// check if the fields match and apply a class to the row if so
var mydate = dataView[i].Date.setHours(0, 0, 0, 0); // eliminate the time from the date
if (mydate == currentDate) { // compare dates
var uid = dataView[i].uid;
$("#grid tbody").find("tr[data-uid=" + uid + "]").addClass("yourClass");
}
}
}
您可能需要使日期格式匹配,但另一个问题(不难解决)
修改强>
我已经为您解决了日期格式问题,这种方式确实有效,因为您可以在此fiddle确认