我在使用Kendo Js的日期时间选择器时遇到问题。情况是:";我有一个日期时间选择器,它只能允许从当前时间开始的日期
这些页面已经保存,当我试图显示日期时,日期不会显示,尽管它变成了过期日期。
我担心的是:输入应该显示已经保存的日期(无论是过去还是现在(,但不允许用户选择返回日期。
代码如下<input id="datetimepicker" />
let options = { //Setting options for the datepicker
value: new Date(),
dateInput: true,
disableDates: function (date) {
if (date <= new Date()) {
return true;
} else {
return false;
}
},
};
$("#datetimepicker").kendoDateTimePicker(options);
const priorValue = new Date("8/31/2022 2:18 PM"); // Let Already selected date
let selector = "#datetimepicker";
let datetimepicker = $(selector).data("kendoDateTimePicker");
datetimepicker.value(priorValue);
datetimepicker.trigger("change");
function roundToNearest30(date) { //Function to round minutes to nearest 30 minute.
date = new Date(date);
const minutes = 30;
const ms = 1000 * 60 * minutes;
return new Date(Math.round(date.getTime() / ms) * ms);
}
一个示例dojo供您参考我需要显示已禁用的选定日期。
您可以使用disableDates配置来禁用以前的日期,使用month.content配置来定义如何呈现日期并有条件地显示/隐藏日期:
<script id="cell-template" type="text/x-kendo-template">
<span class="#= (data.date <= new Date() && !isInArray(data.date, data.dates)) ? 'hidden' : 'visible' #">#= data.value #</span>
</script>
这是一个示例dojo。