Devexpress的ASPxDateEdit控件设置其‘today’ 为客户端当前日期

首先简单说一下ASPxDateEdit控件,它是DevExpress for .net的一个日期选择控件。

图中的红框选中的13即today,但是这个默认是读取服务器端的时间的。客户要求其读取客户端的today。

首先想到的是能否设置控件的某个属性来达到这个目的,找了半天也没有找到相关的属性或方法。要获取客户端的时间肯定要通过js获取了。

获取时间没有问题但是怎么把时间应用到控件上呢。用firebug查看控件html找到了思路。

大家请看today 13所在的td的class多了一个dxeCalendarToday。那么能否通过js把默认的today的dxeCalendarToday去掉呢,然后根据

客户端的时间找到对应的td加上这个dxeCalendarToday类呢。开始行动吧

///Get today from Client side
function GetClientSideToday() {
$('td.dxeCalendarToday:not(:empty)').each(function () {
$(this).removeClass("dxeCalendarToday");
var clientDate = new Date();
var day = clientDate.getDate();
$(this).parent().prev().find('td.dxeCalendarDay').each(function () {
if ($(this).html() == day.toString()) {
$(this).addClass("dxeCalendarToday");
return;
}
});
$(this).parent().find('td.dxeCalendarDay').each(function () {
if ($(this).html() == day.toString()) {
$(this).addClass("dxeCalendarToday");
return;
}
});
$(this).parent().next().find('td.dxeCalendarDay').each(function () {
if ($(this).html() == day.toString()) {
$(this).addClass("dxeCalendarToday");
return;
}
});
});
}

接下来改变客户端的时间,today就是客户端的today了。

初次发文,语言和代码部分都很拙劣,请多关照。

原文地址:https://www.cnblogs.com/xg521310/p/2321838.html