Click here to Skip to main content
15,893,588 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Hello,

I have two Textboxes txtFromDate and txtToDate

For this I want JavaScript Function that Should validate

--> From Date should be less than To Date
--> To DAte should be greater than From Date

Note: I am Using Calender Extender Control from
Ajax Control Toolkit for these both Textboxes

FROM DATE :
<asp:TextBox ID="txtFromDate" runat="server" 
  Width="100px" Enabled="false">
<asp:CalendarExtender ID="CalendarExtender1" runat="server" 
  TargetControlID="txtFromDate"
  PopupButtonID="ImgButton1" 
  DaysModeTitleFormat="MMMM - yyyy"           
  Format="MM/dd/yyyy"> 

 
<asp:ImageButton runat="Server" ID="ImgButton1" 
  ImageUrl="~/Images/Calendar_Icon.png" 
  Height="20px" Width="20px" />

TO DATE :
<asp:TextBox ID="txtToDate" runat="server" 
  Width="100px" Enabled="false">
<asp:CalendarExtender ID="CalendarExtender2" runat="server" 
  TargetControlID="txtToDate"
  PopupButtonID="ImgButton2" 
  DaysModeTitleFormat="MMMM - yyyy"           
  Format="MM/dd/yyyy"> 

 
<asp:ImageButton runat="Server" ID="ImgButton2" 
  ImageUrl="~/Images/Calendar_Icon.png" 
  Height="20px" Width="20px" />

But I want Validation Like as in following Link

http://www.obout.com/calendar/calendar_daterange.aspx[^]
Posted
Updated 12-Jun-11 22:44pm
v4
Comments
Prerak Patel 8-Jun-11 5:52am    
Did you try something?
[no name] 8-Jun-11 6:00am    
post what you have done so far, let us take a look and correct the mistake
Prasad CM 9-Jun-11 6:48am    
Ya I am Using Ajax Control Toolkit
Calender Extender for those Textboxes
But I want Validation Like as in following Link
http://www.obout.com/calendar/calendar_daterange.aspx

You can use Date object for this.First get your textboxes values in variables. then

C#
var fromdate=new Date("fromdate");
var todate = new Date("Todate");
if(fromdate>todate)
{
alert("fromdate cannot greater than todate");
return false;
}
else
{
return true;
}
 
Share this answer
 
C#
function ValidateEndDate() {
            if (document.getElementById('<%=txtStartDate.ClientID %>').value != "" && document.getElementById('<%=txtEndDate.ClientID %>').value != "") {
                var StartDate;
                var EndDate;
                var value = document.getElementById('<%=txtStartDate.ClientID %>').value;
                var year = value.substring(0, value.indexOf("-"));
                value = value.substring(value.indexOf("-") + 1);
                var smonth = value.substring(0, value.indexOf("-"));
                var dt = value.substring(value.indexOf("-") + 1);
                StartDate = Date.UTC(year, smonth, dt, 0, 0, 0);
                value = document.getElementById('<%=txtEndDate.ClientID %>').value;
                year = value.substring(0, value.indexOf("-"));
                value = value.substring(value.indexOf("-") + 1);
                smonth = value.substring(0, value.indexOf("-"));
                dt = value.substring(value.indexOf("-") + 1);
                EndDate = Date.UTC(year, smonth, dt, 0, 0, 0);
                if (EndDate < StartDate) {
                    alert('End Date cannot be before Start Date');
                    return false;
                }
            }

            return true;
        }
 
Share this answer
 
v2
Hi Prasad,
This may help you...
C#
function ValidateDates(){

           var start = new Date(txtStartDate.value);
           var end = new Date(txtEndDate.value);
           var TodayDate = new Date();
           var one_day = 1000 * 60 * 60 * 24;
           if (Math.ceil((start.getTime() - end.getTime()) / (one_day)) > 0) {
               alert("To Date cannot be less than From Date");
               return false;
}
}


Regards,
Naresh.
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900