Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

how to add a day to a date using jquery datepicker

I have 2 textboxes on my site for pickup date and drop off date both using the jquery date picker.

I am having trouble setting the drop off date value to be one day ahead of the pickup date that was selected.

Here is what I have:

$('.pickupDate').change(function() {     var date2 = $('.pickupDate').datepicker('getDate', '+1d');      $('.dropoffDate').datepicker('setDate', date2); }); 

The above will execute but the value in the drop off textbox will match the pickup value instead of being one day ahead. eg: if I select 01-01-2010 the above code returns 01-01-2010 in the drop off box instead of 02-01-2010.

Any thoughts?

Thanks for your help, Rich

like image 352
Richard Reddy Avatar asked Jan 07 '10 16:01

Richard Reddy


People also ask

How to add days in datepicker in jQuery?

datepicker('getDate', '+1d'); $('. dropoffDate'). datepicker('setDate', date2); }); The above will execute but the value in the drop off textbox will match the pickup value instead of being one day ahead.

How do I add time on date picker?

In the Data type box, click Date and Time (dateTime). Click Format. In the Date and Time Format dialog box, in the Display the time like this list, click the option that you want, and then click OK. In the Date Picker Properties dialog box, under Default Value, click Insert Formula .

What is datepicker in jQuery?

The jQuery UI Datepicker is a highly configurable plugin that adds datepicker functionality to your pages. You can customize the date format and language, restrict the selectable date ranges and add in buttons and other navigation options easily.

How do you use a datepicker?

The datepicker is tied to a standard form input field. Focus on the input (click, or use the tab key) to open an interactive calendar in a small overlay. Choose a date, click elsewhere on the page (blur the input), or hit the Esc key to close. If a date is chosen, feedback is shown as the input's value.


2 Answers

Try this:

 $('.pickupDate').change(function() {   var date2 = $('.pickupDate').datepicker('getDate', '+1d');    date2.setDate(date2.getDate()+1);    $('.dropoffDate').datepicker('setDate', date2); }); 
like image 127
Vincent Ramdhanie Avatar answered Sep 22 '22 02:09

Vincent Ramdhanie


This answer really helped me get started (noob) - but I encountered some weird behavior when I set a start date of 12/31/2014 and added +1 to default the end date. Instead of giving me an end date of 01/01/2015 I was getting 02/01/2015 (!!!). This version parses the components of the start date to avoid these end of year oddities.


 $( "#date_start" ).datepicker({     minDate: 0,    dateFormat: "mm/dd/yy",     onSelect: function(selected) {          $("#date_end").datepicker("option","minDate", selected); //  mindate on the End datepicker cannot be less than start date already selected.          var date = $(this).datepicker('getDate');          var tempStartDate = new Date(date);          var default_end = new Date(tempStartDate.getFullYear(), tempStartDate.getMonth(), tempStartDate.getDate()+1); //this parses date to overcome new year date weirdness          $('#date_end').datepicker('setDate', default_end); // Set as default                               }   });   $( "#date_end" ).datepicker({     minDate: 0,    dateFormat: "mm/dd/yy",     onSelect: function(selected) {      $("#date_start").datepicker("option","maxDate", selected); //  maxdate on the Start datepicker cannot be more than end date selected.    }  }); 
like image 34
selu220 Avatar answered Sep 23 '22 02:09

selu220