簡體   English   中英

如何使用JavaScript將一年添加到給定的日期

[英]how to add a year to given date with javascript

我需要給指定的日期加上一年。 我嘗試過此代碼

<script>
  function get_expir(){ 
     regDate = document.getElementById('txt1').value;         

     var da = new Date(regDate);
     da.setFullYear(da.getFullYear()+1, da.getMonth()+1);
     document.form1.txt2.value = da.getFullYear()+ '-'+ da.getMonth()+ '-'+ da.getDate();  
  }
</script

如果用戶輸入為“ 2012-02-29”,則輸出為“ 2013-2-29”。 塊引用

嘗試這個 :

var da = new Date(regDate);

da.setFullYear(da.getFullYear()+1);

var curr_date =  ("0" + (da.getDate())).slice(-2)
var curr_month = ("0" + (da.getMonth() + 1)).slice(-2)
var curr_year = da.getFullYear();

document.form1.txt2.value = curr_date + "-" + curr_month + "-" + curr_year;
 var da = new Date(regDate);
 da.setFullYear();
 da.setMonth();

我要格式化輸出,然后:

(new Date(Date.UTC(da.getFullYear()+1, da.getMonth() + 1, da.getDay(), 0, 0, 0))).toISOString().replace(/T.*Z$/, '');

請注意,我將所有內容放在一行中,但為清楚起見,這些步驟應該在不同的行中

如果您更清楚地說明問題,這將有所幫助。根據我的理解,您希望增加年份,但是根據您的代碼,您也要增加月份。 這是您需要進行的更正:

da.setFullYear(da.getFullYear()+ 1,da.getMonth());

var strDate =document.getElementById('txt1').value
var array = strDate .split('-');
var newDate= (parseInt(array[0])+1)+"-"+array[1]+"-"+array[2];

試試這個,你可以參考這個jsfiddle實驗http://jsfiddle.net/z1rx1djf/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM