在我的组织中,每天都有四个班次 (A - D) 工作,班次与颜色(红色、蓝色、绿色、黄色)相关联。
我在我的 ASP.NET MVC 应用程序的桌面视图中使用 jQuery UI 的 datepicker,并且我可以使用 beforeShowDay 选项来更改日历上天的背景颜色,以便用户一眼就能看到每天的班次。
$(".datePicker").datepicker('option', 'beforeShowDay', colorDays);
function colorDays(date) {
var today = new Date();
// set object to midnight, for comparing against passed in date
today.setHours(0,0,0,0);
var shift = getShift(date);
var cssClass = "";
// don't style unpickable dates in the past
if (date >= today) {
cssClass = "datepicker-shift-" + shift.toLowerCase();
}
return new Array(true, cssClass, shift + " Shift");
}
是否可以对 Mobiscroll 做同样的事情,这样日轮背景会根据当天工作的班次改变颜色?
或者,如果这不可能,更改日期标签以包含班次的名称 (A - D) 就可以了。
我尝试将 onChange 添加到我的 mobiscroll 实例中:
$(".datePicker").mobiscroll().date({
theme: 'jqm',
onChange: function (valueText, inst) {
var date = new Date(valueText);
var shift = getShift(date);
inst.init({ dayText: "Day - " + shift });
}
});
onChange 事件触发,但 mobiscroll 小部件立即关闭。如果重新打开,dayText 标签已正确更改。我不知道如何在保持小部件打开的同时更改标签。