Jquery 以不带特殊字符的格式输入日期,创建一个from+;验证
我想创建一个表单,要求用户以这种格式输入日期:“ddmmyyyy”。没有斜线,没有点,没有其他特殊字符。我只希望使用这种格式是有效的,否则我想生成一条错误消息。 因此-例如,有效答案为: 08101974 22032019 01011987 无效答案为: 40779999 88229933 10152000Jquery 以不带特殊字符的格式输入日期,创建一个from+;验证,jquery,html,validation,date,input,Jquery,Html,Validation,Date,Input,我想创建一个表单,要求用户以这种格式输入日期:“ddmmyyyy”。没有斜线,没有点,没有其他特殊字符。我只希望使用这种格式是有效的,否则我想生成一条错误消息。 因此-例如,有效答案为: 08101974 22032019 01011987 无效答案为: 40779999 88229933 10152000 谢谢 您可以使用正则表达式和javascript.match()函数 $(“#表单”)。关于(“提交”,函数(e){ e、 预防默认值(); var theDate=$(“输入[name=
谢谢 您可以使用正则表达式和javascript
.match()
函数
$(“#表单”)。关于(“提交”,函数(e){
e、 预防默认值();
var theDate=$(“输入[name='date']”)val().trim();
var dateMatch=日期匹配(/^(0?[1-9]|[12][0-9]|[3[01])(0?[1-9]| 1[012])\d{4}$/im);
如果(日期匹配)
警告(“正确!!!”)
其他的
警报(“无效日期都德!!!”)
})
日期:
您可以使用正则表达式和javascript.match()
函数
$(“#表单”)。关于(“提交”,函数(e){
e、 预防默认值();
var theDate=$(“输入[name='date']”)val().trim();
var dateMatch=日期匹配(/^(0?[1-9]|[12][0-9]|[3[01])(0?[1-9]| 1[012])\d{4}$/im);
如果(日期匹配)
警告(“正确!!!”)
其他的
警报(“无效日期都德!!!”)
})
日期:
等等-我试过了,现在我看到像08101974这样的日期也发出了无效警报…确保没有空格,我已经调整了代码以修剪空白。我很好奇,在任何解决方案中使用正则表达式是否明智,从我了解到,如果你不知道这些问题的来龙去脉,最好远离它们,因为它们可能包含不可逆转的错误,很难找到或解决。有一些替代方案,你在运行什么样的项目?(例如,当您使用asp.net mvc时,您可以坚持使用数据注释来完成这项工作)代码段在这里工作,但由于某些原因不在这里:很抱歉,var theDate=$(
,应该是var theDate=$(
。我已经修改了更改。等等-我试过了,现在我看到像08101974这样的日期也发出了无效警报…确保没有空格,我已经调整了代码以修剪空白。我很好奇在任何解决方案中使用正则表达式是否明智,从我了解到,如果你不知道这些问题的来龙去脉,最好远离它们,因为它们可能包含不可逆转的错误,很难找到或解决。有一些替代方案,你在运行什么样的项目?(例如,当您使用asp.net mvc时,您可以坚持使用数据注释来完成这项工作)代码段在这里工作,但由于某些原因不在这里:很抱歉,var theDate=$(
,应该是var theDate=$(
。我已经修改了更改。