2014-08-28 79 views
0

我有文本框顯示日期並有一個按鈕。按鈕中的功能是添加7天並顯示在文本框中。我的代碼:在Javascript中添加日期(日)

function onNext() {  
    var startdate = document.getElementById('date').value; 
    var addday = new Date(startdate); 
    var dd = addday.getDate() + 7; 
    var mm = addday.getMonth() + 1; 
    var y = addday.getFullYear(); 
    var displaydate = y + '/' + mm + '/' + dd; 
    document.getElementById('date').value = displaydate ; 
} 

問題如何加一天去下個月。

例在文本框的日期是2014年8月25日,當我按一下按鈕,日期會2014/09/01

回答

0

僅有7天內陸續新增你的日期,日期已經處理了月/年的變化:

function onNext() {  
    var startdate = document.getElementById('date').value; 
    var addday = new Date(startdate); 
    addday.setDate(addday.getDate() + 7); 
    var dd = addday.getDate() + 7; 
    var mm = addday.getMonth() + 1; 
    var y = addday.getFullYear(); 
    var displaydate = y + '/' + mm + '/' + dd; 
    document.getElementById('date').value = displaydate ; 
} 
+0

的感謝!這行代碼工作正常「addday.setDate(addday.getDate()+ 7);」 – nojla 2014-08-28 17:46:14

0

如果你只是這樣做

var dd = addday.getDate() + 7; 
var mm = addday.getMonth() + 1; 
var y = addday.getFullYear(); 

這意味着,如果日期是2014年12月21日輸出將是28.13.2014

function onNext() {  
    var startdate = document.getElementById('date').value; 
    var d2 = new Date(startdate); 

    d2.setMonth(d2.getMonth()+1); 
    d2.setDate(1); // you can set here whatever date you want 
    document.getElementById('date').value = d2.getFullYear() + '/' + d2.getMonth() + '/' + d2. getDate(); 
} 
0

使用此功能

function updateAb(s){//format dd/mm/yyyy chnage according to your need 
     var dmy = s.split("/"); 

     var joindate = new Date(
      parseInt(dmy[2], 10), 
      parseInt(dmy[1], 10) - 1, 
      parseInt(dmy[0], 10) 
     ); 
     var data_days=7; 

     joindate.setDate(joindate.getDate() + data_days); 
     var cc=("0" + joindate.getDate()).slice(-2) + "/" +("0" + (joindate.getMonth() + 1)).slice(-2) + "/" +joindate.getFullYear(); 
     document.getElementById("datepickerdisabled1").value=cc; 
    }