2016-05-23 83 views
0

我正在嘗試用javascript添加結束日期。在javascript中兩位數的月份和日期

<head> 
    <? $duration1 = $member_data['advt_duration']; //Using for var duration ?> 

    <script src="http://code.jquery.com/jquery.min.js"></script> 

    <script type="text/javascript"> 
     $(document).ready(function() { 
      $(function() { 
       $('#start_date').datepicker({dateFormat: 'yy-mm-dd',timeFormat: "hh:mm tt"}); 
      }); 
     }); 

     function getdate() { 
      var tt = document.getElementById('start_date').value; 

      var date = new Date(tt); 
      var newdate = new Date(date); 
      var duration = '<?php echo $duration1 ;?>'; 
      //alert(duration); 

      if (duration ==="One Month") { 
       newdate.setDate(newdate.getDate() + 30); 
      } 
      if (duration ==="Three Months") { 
       newdate.setDate(newdate.getDate() + 90); 
      } 
      if (duration ==="Six Months") { 
       newdate.setDate(newdate.getDate() + 180); 
      } 
      if (duration ==="One Year") { 
       newdate.setDate(newdate.getDate() + 365); 
      } 

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

      var someFormattedDate = y+ '-' + mm + '-' + dd; 
      document.getElementById('end_date').value = someFormattedDate; 
     } 
    </script> 
</head> 

<body> 
From : <input name="start_date" type="text" id="start_date" style="border:1px solid #333;"/> 

<input type="button" onclick="getdate()" value="Get End Date" style="background-color:#999; border:1px solid #333;"/>&nbsp; 

To : <input name="end_date" type="text" id="end_date" style="border:1px solid #333;" readonly/> 

</body> 

現在我得到的YYYY-MM-DD格式開始日期......但結束日期不在這種格式越來越...

例如如果我們設定開始日期和假設VAR持續時間= 「一年」 ...

起始日期= 「2016年5月9日」 // 09 2016可以

然後 越來越

= 「2017年5月9日」 而不是END_DATE 「2017年5月9日」

+1

這裏有很多車輪重塑,你看看moment.js嗎? – andrew

+0

那麼當'mm'爲5且'dd'爲9時,你認爲'y +' - '+ mm +' - '+ dd'會怎樣? – Pointy

+0

@Pointy是...當開始月份或開始日期是1到9,結束日期在一個數字月份或日期返回...我想要它在兩個數字... –

回答

0

這將工作

mm = (mm < 10) ? ("0" + (mm).toString()) : (mm).toString(); 
    dd= (dd< 10) ? ("0" + (dd).toString()) : (dd).toString(); 
+0

考慮'mm =(mm <10?'0':'') + mm;' – RobG

相關問題