2014-12-30 27 views
0

我的项目中有三个AJAX日历控件(开始日期,结束日期和生效日期)。选择格式为dd/MM/yyyy hh:mm:ss tt的日期。我想添加以下客户端验证:验证asp.net中的datetime字段

  1. 结束日期应该大于或等于开始日期。
  2. 生效日期应该大于结束日期。

我试过使用CompareValidator,但它没有帮助,因为它不允许我比较时间。

是否有任何解决方法可以在客户端实现此验证。

+0

你能张贴'起始日期/结束日期/ EffectiveDate'的样本?我假设你正在面对'转换Date对象'。 – Shubh

+0

将该值转换为日期类型会产生奇怪的结果。以下是立即窗口输出的结果:?document.getElementById(“txtCompletionDate”)。value“2014年12月12日12:37:21”?new Date(document.getElementById(“txtCompletionDate”)。value)Sun Oct 12 12:37:21 UTC + 0530 2014 [原型]:无效日期在将值转换为日期类型时,有什么方法可以指定日期格式吗? –

回答

0

你可以做这样的使用jquery

//First check that textboxes are not empty 
if($('input[id$=txtEndDate]').val()=="") 
{ 
//Enter end date 
return; 
} 
var endDate=new Date($('input[id$=txtEndDate]').val()); 
var startDate=new Date($('input[id$=txtStartDate]').val()); 
var effctDate=new Date($('input[id$=txtEffectiveDate]').val()); 

if(endDate>=startDate) 
{ 
//your code 
} 
else 
{ 

} 
if(effctDate>endDate) 
{ 
//your code 
} 
else 
{ 

} 

使用JavaScript

//First check that textboxes are not empty 
if(document.getElementById("txtEndDate").value=="") 
{ 
//Enter end date 
return; 
} 
var endDate=new Date(document.getElementById("txtEndDate").value); 
var startDate=new Date(document.getElementById("txtStartDate").value); 
var effctDate=new Date(document.getElementById("txtEffectiveDate").value); 

if(endDate>=startDate) 
{ 
//your code 
} 
else 
{ 

} 
if(effctDate>endDate) 
{ 
//your code 
} 
else 
{ 

} 
+0

我试过这段代码,但是我收到了“JavaScript运行时错误:'$'未定义。 –

+0

你需要在你的页面中添加jquery文件 – Mairaj

+0

@MandarPatil你添加了jquery文件吗? – Mairaj