Kendo ui 选择DateTimePicker无法正常工作的范围

Kendo ui 选择DateTimePicker无法正常工作的范围,kendo-ui,kendo-grid,Kendo Ui,Kendo Grid,kendo DatePicker中是否有默认方法确保“截止日期”始终大于或等于“起始日期”: 我的范围选择代码: function startChange() { var startDate = startdatetimepicker.value(), endDate = enddatetimepicker.value(); if (startDate) { startDate = new Date(startDate);

kendo DatePicker中是否有默认方法确保“截止日期”始终大于或等于“起始日期”:

我的范围选择代码:

function startChange() {
    var startDate = startdatetimepicker.value(),
            endDate = enddatetimepicker.value();

    if (startDate) {
        startDate = new Date(startDate);
        startDate.setDate(startDate.getDate());
        enddatetimepicker.min(startDate);
    } else if (endDate) {
        startdatetimepicker.max(new Date(endDate));
    } else {
        endDate = new Date();
        startdatetimepicker.max(endDate);
        enddatetimepicker.min(endDate);
    }
}

function endChange() {
    var endDate = enddatetimepicker.value(),
            startDate = startdatetimepicker.value();

    if (endDate) {
        endDate = new Date(endDate);
        endDate.setDate(endDate.getDate());
        startdatetimepicker.max(endDate);
    } else if (startDate) {
        enddatetimepicker.min(new Date(startDate));
    } else {
        endDate = new Date();
        startdatetimepicker.max(endDate);
        enddatetimepicker.min(endDate);
    }
}
我得到了这个错误->属性'value'od对象3不是一个函数

你的startdatepicker是一个HTML输入对象,没有值方法,只有属性。所以您应该使用:startdatetimepicker.value

尽管如此,我还是建议将剑道UI日期时间选择器更改为:

功能启动更改{ var startDate=k_startdatetimepicker.value, endDate=k_enddatetimepicker.value; 如果开始日期{ startDate=新日期startDate; startDate.setDatestartDate.getDate; k_enddatetimepicker.minstartDate; } 否则,如果结束日期{ k_startdatetimepicker.maxnew DateendDate; } 否则{ endDate=新日期; k_startdatetimepicker.maxendDate; k_enddatetimepicker.minendDate; } } 功能末端改变{ var endDate=k_enddatetimepicker.value, startDate=k_startdatetimepicker.value; console.logendDate,startDate; 如果结束日期{ endDate=新日期endDate; endDate.setDateendDate.getDate; k_startdatetimepicker.maxendDate; } 否则,如果开始日期{ k_enddatetimepicker.minnew DatestartDate; } 否则{ endDate=新日期; k_startdatetimepicker.maxendDate; k_enddatetimepicker.minendDate; } } 其中k_startdatetimepicker和k_enddatetimepicker是:

var k_startdatetimepicker=$startdatetimepicker.kendoDateTimePicker{ 更改:startChange, 第二:是的, 日期格式:年月日, 时间格式:HH:mm:ss, 格式:年月日HH:MM:ss }.datakendoDateTimePicker; var k_enddatetimepicker=$enddatetimepicker.kendoDateTimePicker{ 改变:结束改变, 第二:是的, 日期格式:年月日, 时间格式:HH:mm:ss, 格式:年月日HH:MM:ss }.datakendoDateTimePicker;
运行JSFIDLE

不,没有现成的验证,您需要实现它。检查http://demos.kendoui.com/web/datepicker/rangeselection.htmlya 我试过上面的代码,但不起作用。有人能帮我吗?我没有找到任何开箱即用验证的解决方案。只是让你觉得我希望这能帮助你调试程序。。。什么是startdatetimepicker?你在哪里定义它?它是一个具有值方法的对象吗?你确定吗?当您复制时,您应该了解您正在复制的内容…根据我的知识对象,是意味着我们可以将任何内容传递给方法,所以这里我将datetimepicker startdatetimepicker的id传递给value方法。如果我错了,请你澄清我,如果你不介意的话。非常感谢你,onabai,你帮助我的方式真的很棒,我会再次查看剑道文件