Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 添加30天到日期(mm/dd/yyyy),然后返回字符串(mm/dd/yyyy)_Javascript_Jquery_Date_Datepicker - Fatal编程技术网

Javascript 添加30天到日期(mm/dd/yyyy),然后返回字符串(mm/dd/yyyy)

Javascript 添加30天到日期(mm/dd/yyyy),然后返回字符串(mm/dd/yyyy),javascript,jquery,date,datepicker,Javascript,Jquery,Date,Datepicker,我有下面的函数,它从datepicker获取一个字符串,并将其转换为一个日期对象,这样我就可以在其中添加30天。从那里,我试图返回一个字符串,其中添加了30天,格式为(mm/dd/yy) 当第一个警报触发时,它会正确地将所选日期增加30天,并将所选日期显示为“2011年3月5日”: 2011年6月2日星期四00:00:00 GMT+0100(GMT夏令时) 第二个警报显示 2011年5月2日 似乎我无法正确设置日期格式,并获取“05/03/2011”并返回“06/02/2011”。我可以做+1个

我有下面的函数,它从datepicker获取一个字符串,并将其转换为一个日期对象,这样我就可以在其中添加30天。从那里,我试图返回一个字符串,其中添加了30天,格式为(mm/dd/yy)

当第一个警报触发时,它会正确地将所选日期增加30天,并将所选日期显示为“2011年3月5日”:

2011年6月2日星期四00:00:00 GMT+0100(GMT夏令时)

第二个警报显示

2011年5月2日

似乎我无法正确设置日期格式,并获取“05/03/2011”并返回“06/02/2011”。我可以做+1个月,但可以做一些帮助,请告诉我我做错了什么

  $('#sign_date').datepicker({
      onSelect: function(dateText, inst) { 

          var d = new Date(dateText);
          d.setDate(d.getDate() + 30);

          alert(d);

          var date = d.getDate();
          var month = d.getMonth();
          var year = d.getFullYear();

          alert(month+'/'+date +'/'+year)

      }
  });
此外,我认为我的做法将显示日期和月份,例如1月1日和1月1日,我希望是1月1日和1月1日

感谢您提供前导零:

// add leading zero if the length equals 1
if (month < 10) month = "0" + month;
if (day < 10)   day   = "0" + day;
对于前导零:

// add leading zero if the length equals 1
if (month < 10) month = "0" + month;
if (day < 10)   day   = "0" + day;

惊喜,惊喜。。。
getMonth()
方法返回范围为0..11的月份。

惊喜,惊喜。。。
getMonth()
方法返回0..11范围内的月份。

Kelly的答案对我有效

只是改变了这个

if(month<9) month = "0"+(month+1);
if(date<10) day = "0"+date;

if(month凯利的回答对我有效

只是改变了这个

if(month<9) month = "0"+(month+1);
if(date<10) day = "0"+date;

if(monthI可以添加30天,但似乎无法以正确的格式返回日期format@jim,抱歉,我正在完成我的答案,而我提交了我认为是你问题的前半部分。我可以添加30天,但似乎无法返回正确的日期format@jim,对不起,当我提交我认为是第一个答案时,我正在完成我的答案问题的一半。用你现在的代码,如果原来的<代码>月份<代码>==9,你最终会得到<代码>010
。嗯,你是对的。应该是(月)用你现在的代码,如果原来的<代码>月份
==9,你最终会得到<代码>010。嗯,你是对的。应该是(月)