我可以使用 HTML 输入类型“日期”来仅收集一年吗?

新手上路,请多包涵

我有一个字段需要从用户那里收集一年(即具有年份分辨率的日期 - 为了便于存储,我更喜欢存储实际日期值而不是数字)。

我想使用现代浏览器或 webshims 支持的日期输入 UI,因为它很好并且在现代平台上运行良好。我不知道如何让 UI 只显示年份。有任何想法吗?

如果没有平台支持,理想情况下,如果您单击“预览”,然后单击小部件的顶部几次,理想情况下我希望有一个类似于您可以 在此处看到 的 UI,相反的情况除外:当您第一次单击输入时你会得到一个包含几十年列表的小部件,然后向下钻取以选择年份,然后 UI 关闭。

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

阅读 610
2 个回答

不,你不能,它不只支持年份,所以你需要一个脚本,比如 jQuery 或你拥有的 webshim 链接,它只显示年份。


如果 jQuery 是一个选项,这里是一个,从 Sibu 借来的:

Javascript

 $(function() {
    $( "#datepicker" ).datepicker({dateFormat: 'yy'});
});​

CSS

 .ui-datepicker-calendar {
   display: none;
}

来源: https ://stackoverflow.com/a/13528855/2827823

Src 小提琴:http: //jsfiddle.net/vW8zc/

这是 一个更新的小提琴,没有月份和上一个/下一个按钮


如果 bootstrap 是一个选项, 请检查此链接,它们有您想要的布局。

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

不,你不能,但输入类型 number 提供了你为此目的所需的功能。

例子:

 <input type="number" min="1900" max="2099" step="1" value="2016" />

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

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题