C# Javascript中的日期选择器和时间选择器条件

C# Javascript中的日期选择器和时间选择器条件,c#,javascript,asp.net,datetime,telerik,C#,Javascript,Asp.net,Datetime,Telerik,我有telerik Rad Date Picker和Time Picker。我想检查是否有人选择了Enddate之前的Startdate和Endtime之前的开始时间 开始日期:2013年1月31日 截止日期:2013年1月1日 开始时间:上午10:00:00 结束时间:上午11:00:00 在上面的示例中,StartDate和EndDate是错误的,但Starttime和EndTime是正确的。与此场景类似,我下面的代码没有显示错误 我的Javascript代码是 function vali

我有telerik Rad Date Picker和Time Picker。我想检查是否有人选择了Enddate之前的Startdate和Endtime之前的开始时间

开始日期:2013年1月31日 截止日期:2013年1月1日

开始时间:上午10:00:00 结束时间:上午11:00:00

在上面的示例中,StartDate和EndDate是错误的,但Starttime和EndTime是正确的。与此场景类似,我下面的代码没有显示错误

我的Javascript代码是

 function validatenow(sender, args) {
    debugger;
    var StartDateControl = $find("<%= rdpStDt.ClientID %>");
    var SD = new Date(StartDateControl.get_selectedDate());
    var EndDateControl = $find("<%= rdpEd.ClientID %>");
    var ED = new Date(EndDateControl.get_selectedDate());
    var StartTimeControl = $find("<%= rtpSt.ClientID %>");
    var ST = new Date(StartTimeControl.get_selectedDate());
    var EndTimeControl = $find("<%= rtpEt.ClientID %>");
    var ET = new Date(EndTimeControl.get_selectedDate());
     args.IsValid = true;
    if((SD > ED ) || (ST > ET)){  //if startdate or time is larger than enddate or time it shows the error.
         args.IsValid = false;
     }
 }

我更喜欢使用moment.js进行日期时间操作。请阅读以下内容了解详情


您应该将javascript中的日期转换为整数,然后进行比较。看看是否有效。

有人能告诉我为什么这个不起作用吗?你能在其中添加一些调试代码,并找出这些控件返回的值吗。因为我没有telerik控件,所以我很难了解到底发生了什么。有一件事您可以尝试,根据文档get_selectedDate方法返回date对象,因此您不需要通过调用new date自己创建日期对象,删除该部分并比较控件返回的原始值。您还可以使用比较验证控件来实现相同的操作。在链接到一篇文章之后。