【发布时间】:2017-09-14 05:29:52
【问题描述】:
我一直在研究一个表单元素,我想在没有任何浏览器内置日期选择器或任何其他基于 jquery 库的日期选择器的情况下实现一个日期字段。我想实现简单的日期选择器,它对每个人都是用户友好的。
我有 2 种不同风格的想法,并试图实现这一点,但没有完全达到我想要的效果。也许我必须写一些 jQuery 左右,但不知道该写什么。
我想要什么? 在上图中,它首先显示了带有占位符 DD/MM/YYYY 的输入字段,当有人输入时,他应该以上述样式输入日期格式,并且作为日期分隔符的正斜杠应该保持不变。
(另一个高级想法) 如果可能,我们可以为字段设置范围限制,DD 只能输入 1-31,MM 只能输入 1 到 12,YYYY 0 到当前年份。
.custom-date-field {
font-family: Arial, Sans-serif;
border: 1px solid #dddddd;
padding: 20px;
font-size: 12px;
margin-bottom: 30px;
}
.custom-date-field input {
background-color:#e4ebef;
border: none;
padding: 5px 10px;
}
.custom-date-field span {
display: block;
font-size: 12px;
}
.custom-date-field label {
width: 30%;
display: inline-block;
float: left;
font-size: 18px;
}
<div class="custom-date-field">
<p><label>DOB <span>Enter the description</span></label>
<input type="number" placeholder="DD/MM/YYYY" value="" />
</p>
</div>
<div class="custom-date-field">
<p><label>DOB <span>Enter the date format DD/MM/YYYY</span></label>
<input type="number" placeholder="__/__/____" value="" />
</p>
</div>
【问题讨论】:
-
“我想实现简单的日期选择器,它对每个人都是用户友好的” - 然后使用
date字段和用户已经习惯的本地日期选择器到,再加上旧浏览器的 polyfill,而不是强迫我手动输入各个日期部分。这对用户不友好,但恰恰相反。 -
date带有本机日期选择器的字段不适用于所有浏览器。 caniuse.com/#feat=input-datetime 所以我想实现一些易于使用的小型 javascript -
我知道,这就是为什么我说对旧浏览器使用 polyfill。
标签: html date input placeholder