【发布时间】:2018-09-03 20:20:28
【问题描述】:
我得到了这个工作,但是它需要限制文本输入的部分。例如,我必须将 DD 限制为最多 31 个,MM 限制为最多 12 个,并将 YYYY 从 1900 年限制到 2018 年
知道该怎么做吗?
$('[data-type="dateofbirth"]').mask('00/00/0000');
function submitBday1() {
var Q4A = "";
var Bdate = document.getElementById('bday1').value;
var darr = Bdate.split('/');
var temp = darr[0];
darr[0] = darr[1];
darr[1] = temp;
var fmtstr = darr.join('/');
var Bday = +new Date(fmtstr);
Q4A += ~~((Date.now() - Bday) / (31557600000));
var theBday = document.getElementById('resultBday1');
theBday.innerHTML = Q4A;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.mask/1.14.15/jquery.mask.min.js"></script>
<input type="text" pattern="[0-9]*" data-type="dateofbirth" maxLength="10" id="date" class="form-control" placeholder="DD/MM/YYYY">
【问题讨论】:
-
你为什么不使用日期输入?
-
正如@Luca 所暗示的那样:使用日期输入 (
<input type="date">):demo。 -
客户端不想弹出日期。我之前用过。想输入日期。
-
你可以隐藏弹出窗口,这样行吗?
-
使用正则表达式验证输入中的文本也是一种选择。
标签: javascript jquery