在 jquery 掩蔽中限制遵循 mm/dd/yyyy?
Restriction to follow mm/dd/yyyy in jquery masking?
我在我的项目中使用 jquery 屏蔽来允许 mm/dd/yyyy 中的日期,如下所示
<script src="Scripts/jquery.maskedinput-1.2.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
//Input Mask for date of birth or date in general
$("#txtDOB").mask("99/99/9999");
});
</script>
但目前用户可以输入任何大于 12 和 0 的值作为月份。对于大于 31 的天数也是如此。在那儿
我可以限制的一种方式,以便用户不能为 mm 输入超过 12 或 0。同样,他可以连续几天输入超过 31 或 0 ?
我在提交时进行了 java 脚本验证,但是有没有办法在输入时进行限制?
可以尝试这样的事情
if ($(day).val() > 31 || $(month).val() > 12 || $(year).val() > 2014) {
$(this).val('');
}
试试这个:
$("#txtDOB").mask('d/m/y', {'translation': {
d: {pattern: /[0-2]?\d|3[0-1]/},
m: {pattern: /0[1-9]|1[0-2]/},
y: {pattern: /[1-2]\d{3}/}
}
});
UPDATED
the mask has three parts, d
for days, m
for months and y
for years (you can switch the order if you want), and I have made 3 regex, one for each.
d
模式:有两个可能的匹配项(两个选项)由 |
分隔
- 第一个
[0-2]?\d
第一个数字应该是 0 up to 2
([0-2]
) 及其可选的 (?
) 第二个数字可以是 0-9
(\d
)
- 第二个
3[0-1]
第一个数字是 3
第二个只能是 0
或 1
m
模式:有两个选项由|
分隔
- 第一个
0[1-9]
,如果月份以 0
开头,第二个数字可能是 1 to 9
- 第二个
1[0-2]
,如果月份以1
开头,第二个数字只能是0 to 2
y
模式[1-2]\d{3}
:第一个数字可以是1
或2
,然后应该是3个数字[0-9]
。
我在我的项目中使用 jquery 屏蔽来允许 mm/dd/yyyy 中的日期,如下所示
<script src="Scripts/jquery.maskedinput-1.2.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
//Input Mask for date of birth or date in general
$("#txtDOB").mask("99/99/9999");
});
</script>
但目前用户可以输入任何大于 12 和 0 的值作为月份。对于大于 31 的天数也是如此。在那儿 我可以限制的一种方式,以便用户不能为 mm 输入超过 12 或 0。同样,他可以连续几天输入超过 31 或 0 ?
我在提交时进行了 java 脚本验证,但是有没有办法在输入时进行限制?
可以尝试这样的事情
if ($(day).val() > 31 || $(month).val() > 12 || $(year).val() > 2014) {
$(this).val('');
}
试试这个:
$("#txtDOB").mask('d/m/y', {'translation': {
d: {pattern: /[0-2]?\d|3[0-1]/},
m: {pattern: /0[1-9]|1[0-2]/},
y: {pattern: /[1-2]\d{3}/}
}
});
UPDATED
the mask has three parts,
d
for days,m
for months andy
for years (you can switch the order if you want), and I have made 3 regex, one for each.
分隔d
模式:有两个可能的匹配项(两个选项)由|
- 第一个
[0-2]?\d
第一个数字应该是0 up to 2
([0-2]
) 及其可选的 (?
) 第二个数字可以是0-9
(\d
) - 第二个
3[0-1]
第一个数字是3
第二个只能是0
或1
- 第一个
分隔m
模式:有两个选项由|
- 第一个
0[1-9]
,如果月份以0
开头,第二个数字可能是1 to 9
- 第二个
1[0-2]
,如果月份以1
开头,第二个数字只能是0 to 2
- 第一个
y
模式[1-2]\d{3}
:第一个数字可以是1
或2
,然后应该是3个数字[0-9]
。