【问题标题】:Set after tomorrow date to input as min date设置在明天日期之后输入为最小日期
【发布时间】:2026-01-09 13:00:02
【问题描述】:

此代码有效,但它设置了今天的日期

var today = new Date().toISOString().split('T')[0];
document.getElementsByName("date")[0].setAttribute('min', today);

这个我试过了,但是没用

var today = new Date();
today.setDate(today.getDate() + 2).toISOString().split('T')[0];
document.getElementsByName("date")[0].setAttribute('min', today);

【问题讨论】:

  • 请澄清您的问题。期望的行为到底是什么?
  • 我有 。我的第一个代码设置为此输入最小值,因此用户不能选择今天之前的任何日期(今天之前的所有日期都将被禁用)。所以我想将此最小值更改为“明天之后”(如果获取当前日期,最小值应为 '02-11-2017')

标签: javascript date


【解决方案1】:

首先获取想要的日期,然后将其转换为ISOString,如下所示:

var today = new Date();
    today = new Date(today.setDate(today.getDate() + 2)).toISOString().split('T')[0];
    document.getElementsByName("date")[0].setAttribute('min', today);

【讨论】:

    【解决方案2】:

    这应该可以工作

    var today = new Date();
        today = new Date(today.setDate(today.getDate() + 2)).toISOString().split('T')[0];
        document.getElementsByName("date")[0].setAttribute('min', today);
    

    【讨论】:

      【解决方案3】:

      如果您想要与today 分开的日期,您需要创建一个带有第二个new Date() 表达式的日期。

      var today = new Date();
      var minDate = new Date(today.setDate(today.getDate() + 2)).toISOString().split("T")[0];
      console.log(minDate);

      【讨论】:

        【解决方案4】:
        console.log( new Date(new Date().getTime() + 86400000).toISOString().split('T')[0] )
        

        【讨论】:

        • 请用几句话告诉我们您认为您共享的这段代码如何以及为什么回答了这个问题。
        • @Andrew Ulianov 仅代码答案被标记为省力,请简要说明您的代码的作用。谢谢!