如何使用jquery datepicker将日期添加到日期

watbbzwu  于 2023-03-29  发布在  jQuery
关注(0)|答案(5)|浏览(227)

我在我的网站上有两个文本框,分别是取件日期和送件日期,都是使用jquery日期选择器。
我无法将还车日期值设置为所选取车日期的前一天。
这是我的想法:

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

上述将执行,但在drop off文本框中的值将匹配拾取值,而不是提前一天。例如:如果我选择01-01-2010,则上述代码在投递框中返回01-01-2010,而不是02-01-2010。
有什么想法吗?
谢谢你的帮助,瑞奇

qncylg1j

qncylg1j1#

试试这个:

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

zzoitvuj2#

这个答案真的帮助我开始(noob)-但我遇到了一些奇怪的行为,当我设置了一个开始日期12/31/2014,并添加了+1默认结束日期。而不是给我一个结束日期01/01/2015我得到02/01/2015(!!!)。这个版本解析开始日期的组成部分,以避免这些年底的奇怪。

$( "#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.

  }

});
eiee3dmh

eiee3dmh3#

datepicker('setDate ')在datepicket中设置日期,而不是在输入中。
您应该添加日期并在输入中设置它。

var date2 = $('.pickupDate').datepicker('getDate');
var nextDayDate = new Date();
nextDayDate.setDate(date2.getDate() + 1);
$('input').val(nextDayDate);
jhdbpxl9

jhdbpxl94#

var today = new Date();
date = today.getDate() >= 10 ? `${today.getDate()}` : `0${today.getDate()}`;
month = today.getMonth()+1 >= 10 ? `${today.getMonth()+1}` : `0${today.getMonth()+1}`;
year = `${today.getFullYear()}`;
$('#datepicker_input_id').attr('value', `${month}/${date}/${year}`);
bgtovc5b

bgtovc5b5#

请在下面找到。代码将日期选择器添加15天,并以dd-mm-yy格式显示在名为datepicker 2的文本框中。

$("#datepicker").datepicker({
  dateFormat: 'dd-mm-yy',
  inline: true,
  //altField: "#datepicker2",

  onSelect: function(dateText, inst) {
    var date = $(this).datepicker('getDate');
    var nextDayDate = new Date();
    nextDayDate.setDate(date.getDate() + 15);
    var copydate = $.datepicker.formatDate('dd-mm-yy', nextDayDate);
    $('#datepicker2').val(copydate);
  }
});

相关问题