使用javascript将mm / dd / yyyy转换为dd / mm / yyyy,同时添加带有日期的天数

convert mm/dd/yyyy to dd/mm/yyyy using javascript while adding Number of days with a Date

本问题已经有最佳答案,请猛点这里访问。

我想在特定日期添加天数。 我已经这样做但问题是它适用于MM / DD / YYYY格式。 现在我希望它适用于DD / MM / YYYY格式。 以下是我的示例代码..

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
      <script type="text/javascript">
          function datechange() {
              var d = document.getElementById('days').value;
              var myDate = new Date(document.getElementById('date1').value);
              myDate.setDate(myDate.getDate() + parseInt(d));
              document.getElementById('date2').value =  (myDate.getDate() + 1 )  + '/' + (myDate.getMonth() + 1) + '/' + (myDate.getFullYear());
          }
          function addDate() {
              date = new Date();
              var month = date.getMonth() + 1;
              var day = date.getDate();
              var year = date.getFullYear();
              if (document.getElementById('date1').value == '') {
                  document.getElementById('date1').value = month + '/' + day + '/' + year;
              }
          }

和HTML代码是 -

1
2
3
4
5
6
7
8
9
   <body onloadx="addDate()">
         <br/>

        Number of days to add : <input type="text" id="days" onChange="datechange()"  /> <br/> <br/>
        Today's Date (MM / DD / YYYY) : <input type="text" id="date1" onChange="datechange()" /> <br/> <br/>

        (MM / DD / YYYY) : <input type="text" id="date2" readonly/>

  </body>

提前致谢


正如评论中指出的那样,我认为有足够的信息可以解决这个问题。 但是,如果您要查找特定于代码示例的内容,我的建议是将'MM / DD / YYYY'拆分为'/'并使用日期对象setMonthsetDatesetFullYear方法。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function datechange() {
  var d = document.getElementById('days').value;
  var myDate = new Date();
  var d1Value = document.getElementById('date1').value;
  var ddmmyyyy = d1Value.split('/');

  myDate.setDate (ddmmyyyy[0]);  
  myDate.setMonth(ddmmyyyy[1] - 1);  // January is index 0
  myDate.setFullYear (ddmmyyyy[2]);

  myDate.setDate(myDate.getDate() + parseInt(d)); // add value of d

  document.getElementById('date2').value =  myDate.getDate()
                                  + '/' + (myDate.getMonth() + 1)
                                  + '/' + myDate.getFullYear();
}