好的,我在表单中有一个输入,这是一个日期输入。我希望它接受基于“XX/XX/XXXX”之类的模式的字符。目前它只接受数字和“/”。但我不希望用户输入“X/XXXX/XX”之类的日期或其他类型的日期,也不想像“//XX/XXX/XXX”这样写错。我不知道如何在这个或 jQuery 上使用 js,因此用户根据模式输入日期而不是其他方式。
问问题
2237 次
3 回答
3
廉价而简单的方法可能只是实现jQuery UI 日期选择器控件,以便您可以通过它来控制输入格式。
它基本上是在回避问题,但可能会为您解决实际问题。
于 2012-06-06T11:57:00.597 回答
1
使用正则表达式^(3[0-1]|[0-2]?[0-9])\/(0?[0-9]|1[0-2])\/(2[0-9]+)$
:
var date = "20/12/2012";
console.log(isDateOK(date));
function isDateOK(date) {
return date.match(/^(3[0-1]|[0-2]?[0-9])\/(0?[0-9]|1[0-2])\/([1-2][0-9]{3})$/);
}
如果不匹配,它将返回 false。此示例使用 DD/MM/YYYY。如果您想要 MM/DD/YYYY,请改用以下正则表达式:^(0?[0-9]|1[0-2])\/(3[0-1]|[0-2]?[0-9])\/[1-2][0-9]{3$
JSFiddle:http: //jsfiddle.net/UBFeN/2/
于 2012-06-06T12:00:35.037 回答
1
于 2012-06-06T11:56:24.567 回答