如何在KendoGrid中选择具有最接近当前时间而非日期的时间列值的行?

问题描述

我有一个Kendo网格,其中一栏有约会时间。在网格负载下,我想选择时间最接近当前时间的行。

例如Kendo网格有四行,并且每一行在“约会时间”列中具有以下值: 上午09:30, 上午10:30, 上午11:30, 上午12:30

,当前时间是11:00 AM。现在在页面加载时,应该选择时间为11:30 AM的行。

如果我们在12:00 AM加载网格,那么应该选择具有12:30 AM的行。

如果我们在12:30 AM之后加载网格,则应该选择网格的最后一行,因为它最接近当前时间:

我当前选择行的代码如下:

Kendo网格ID: dgListView

Kendo专栏

{
        field: "ApptTime",hidden: true,template: function (dataItem) {
            return kendo.toString(dataItem.ApptTime,"hh:mm tt")
        },attributes: {
            ApptTime: "ApptTime"
        }
    }

数据绑定功能

function SetGridRowSelected(e) {
var objGrid = jQuery_1_9_1('#dgListView');
var row;
var currentDate = new Date();

var time = currentDate.toLocaleTimeString();

var data = objGrid.data("kendoGrid");

row = data.tbody.find(">tr:not(.k-grouping-row)").filter(function (i) {
    return (this.cells[18].innerHTML >= time); //18th column in Grid has appointment time
});

if (objGrid && row.length) {
    data.select(row);
    row.click();
    row.addClass('k-state-selected');
}

var scrollContentOffset = grid.find("tbody").offset().top;
var selectContentOffset = data.select().offset().top;
var distance = selectContentOffset - scrollContentOffset;
grid.find(".k-grid-content").animate({
    scrollTop: distance
},500);
}

我正在将第18列(具有约会时间)与当前时间进行比较,并尝试选择最接近该行的行,但是没有发生比较,也没有引发任何错误。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)