从 html5 日期选择器中禁用某些日期

新手上路,请多包涵

当我想禁用一个场景的当前日期和其他场景的未来日期时,是否可以禁用日期。我应该如何禁用日期?

原文由 Seeya K 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 545
1 个回答

您可以将 minmax 属性添加到 input type=date 。日期必须采用 ISO 格式 (yyyy-mm-dd)。许多移动浏览器和当前版本的 Chrome 都支持此功能,但用户可以在不使用日期选择器的情况下手动输入无效日期。

 <input name="somedate" type="date" min="2013-12-25">

minmax 属性 必须 是完整的日期;无法指定“今天”或“ +0 ”。为此,您需要使用 JavaScript 或服务器端语言:

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

http://jsfiddle.net/mblase75/kz7d2/

仅在今天排除,同时允许过去或未来的日期,不是这里的选项。但是,如果您的意思是您希望明天成为 min 日期(删除今天和所有过去的日期),请参阅 此问题 以增加 today 一天。

与涉及 HTML 表单的所有其他情况一样,无论您如何在客户端限制它,您都应该始终在服务器端验证字段。

原文由 Blazemonger 发布,翻译遵循 CC BY-SA 4.0 许可协议

推荐问题