在空的日期时间选择器上设置默认时间

时间:2019-02-25 21:33:03

标签: kendo-ui

剑道(Kendo)真是太陌生了(知道这确实很危险),我试图弄清楚如何将默认时间设置为不凌晨12点。

我知道我可以传递一个datetime值,但它会超出该值,但是我试图做的事使该字段为空,但是第一次有可用时间是8 AM。

这可能吗?

谢谢

2 个答案:

答案 0 :(得分:1)

查看下面的代码是否适合您的需求。我用全局变量制作了一个简单的演示,让您对解决方案有所了解。

在演示中,我要做的是检查对值的更改是否是第一个更改,以及是否从日期视图完成。如果两者都正确,则时间设置为8:00。

如果时间值是第一个选择的日期,则可以使用类似的方法来设置默认日期。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"/>
    <title>Kendo UI Snippet</title>

    <link rel="stylesheet" href="https://kendo.cdn.telerik.com/2019.1.220/styles/kendo.common.min.css"/>
    <link rel="stylesheet" href="https://kendo.cdn.telerik.com/2019.1.220/styles/kendo.rtl.min.css"/>
    <link rel="stylesheet" href="https://kendo.cdn.telerik.com/2019.1.220/styles/kendo.silver.min.css"/>
    <link rel="stylesheet" href="https://kendo.cdn.telerik.com/2019.1.220/styles/kendo.mobile.all.min.css"/>

    <script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
    <script src="https://kendo.cdn.telerik.com/2019.1.220/js/kendo.all.min.js"></script>
</head>
<body>
  
<input id="datetimepicker" />
<script>
    let mode;
    let firstChange = true;

    $("#datetimepicker").kendoDateTimePicker({
        open: function(e) {
            mode = e.view;
        },
        change: function(e) {
            if (mode === "date" && firstChange) {
                let currentDate = e.sender.value();

                e.sender.value(new Date(currentDate.getFullYear(), currentDate.getMonth(), currentDate.getDate(), 8, 0, 0));

                firstChange = false;
            } else {
              firstChange = false;
            }
        }
    });
</script>
</body>
</html>

答案 1 :(得分:0)

我不确定您的要求,但是您可以根据自己的要求设置默认日期时间。

$("#dtpXYZ).data('kendoDatePicker').value(kendo.toString(new Date($.now()), 'dd/MM/yyyy  HH:mm'));