当我根据当前日期设置最大日期时出现问题。
代码如下:
var minDate = new Date();
var maxDate = new Date();
function myFunction() {
  maxDate.setDate(new Date().getDate() + 60);
  document.getElementById("demo").innerHTML = maxDate;
}<p>Click the button to display the maxDate</p>
<button onclick="myFunction()">Try it</button>
<p id="demo"></p>
每次我点击一个按钮,日期就会增加60天。
我想用日期输入中输入的日期进行验证,我的验证如下所示。
输入的日期应介于当前日期和当前日期之后的60天之间。
Output:
On click of button.
1st Click : Tue Aug 28 2018 11:36:52 GMT+0530 (India Standard Time)
2nd Click : Sun Oct 28 2018 11:36:52 GMT+0530 (India Standard Time)
3rd Click : Fri Dec 28 2018 11:36:52 GMT+0530 (India Standard Time)请帮帮忙。
发布于 2018-06-29 14:18:38
new Date().getDate()根据本地时间返回当前日期的月份日期-我当前的本地日期是29 June 2018,因此它返回29。
这意味着new Date().getDate() + 60返回89。
maxDate.setDate(89)设置maxDate对象相对于当前设置的月份开始的日期。
maxDate在全局范围内-这意味着当前在maxDate中设置的月份在每次点击后都会发生变化。
尝试使maxDate成为函数的本地函数:
function myFunction() {
  let maxDate = new Date();
  maxDate.setDate(new Date().getDate() + 60);
  document.getElementById("demo").innerHTML = maxDate;
}<p>Click the button to display the maxDate</p>
<button onclick="myFunction()">Try it</button>
<p id="demo"></p>
https://stackoverflow.com/questions/51095290
复制相似问题