javascript - 限制日期选择器(从今天开始)- HTML

标签 javascript html date datetime datepicker

我一直在这个页面(以及其他论坛)上四处寻找答案,以将日期选择器限制为从用户访问该页面之日起 14 天。日期选择器内置了“今天日期”的选项,它是自动配置的,并将日期选项设置为今天的 DD/MM/YY,所以我认为这是可以实现的。我的目标是从“今天”起 14 天后的每个日期都显示为灰色且不可选择。我可以进一步开发此功能,以便也可以选择“今天”之前的任何日期,但目前实现“今天”之后 14 天的限制就很好了。

我熟悉最大日期和最小日期,它们需要精确的 DD/MM/YY 格式设置列出的日期之间的界限。我需要类似“最大日期:今天 + 14”的内容

最佳答案

I require something like 'max-date: today + 14'

这基本上就是您的答案,即“将 max 属性设置为 today + 14,将 min 属性设置为 today”。在 JavaScript 中相当简单:

const datePicker = document.getElementById("date-picker");

datePicker.min = getDate();
datePicker.max = getDate(14);

// Borrowed from https://stackoverflow.com/a/29774197/7290573
function getDate(days) {
    let date;

    if (days !== undefined) {
        date = new Date(Date.now() + days * 24 * 60 * 60 * 1000);
    } else {
        date = new Date();
    }

    const offset = date.getTimezoneOffset();

    date = new Date(date.getTime() - (offset*60*1000));

    return date.toISOString().split("T")[0];
}
<input id="date-picker" type="date" autocomplete="off" />

关于javascript - 限制日期选择器(从今天开始)- HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71601713/

相关文章:

javascript - 使用Javascript将页面从子域链接到具有相同结构子文件夹的另一个子域

android - 在移动设备上的 Android 浏览器中访问麦克风

html - 在卡的中心实现预加载器?

javascript - 如何在莫里斯线图中的线点上显示 y 轴值

java - 我需要用户输入来放置自动放入标记 (/) 的日期

php - 如何在 PHP/MySQL 中存储生日和年龄以便年龄可以每天更新?

javascript - 在 redux 工具包中导入 reducer 是如何工作的?

javascript - 如何使用 jquery 在运行时修复 bootstrap 复选框选择器默认标签

javascript - 如何在 UIWebview 中的插入符位置插入图像?

javascript - moment js中的自定义长日期格式