2017-04-13 23 views
1

问题描述:asp.net - 验证德语日期格式不工作

我开发一个德国公司asp.net网站。在我看来,我必须验证德国的日期。我想,那很容易,但现在我绝望了。在我看来,我怎么能打开德国的验证。我搜索了stackoverflow,但我没找到适合我的工作解决方案。

例如以格式dd.mm.yyyy - > 13.04.2017输入德语日期将始终验证错误的日期格式。

解决方案: 我试图设置文化信息,但我的问题是前端验证。

thx为您的帮助

+0

了什么日期得到了与德语/法语办?日期只会根据用户的偏好更改格式。 – avck

+0

验证器中必须有一个选项,用于设置您期望的日期格式 – avck

回答

0

尝试使用此代码进行前端验证。
基本验证使用这个正则表达式/^(0[1-9]|[12][0-9]|3[01])[\- \/.](?:(0[1-9]|1[012])[\- \/.](201)[2-9]{1})$/
它将适用于13.04.2017,13/04/2017和13-04-2017格式。

if("13.04.2017".match(/^(0[1-9]|[12][0-9]|3[01])[\- \/.](?:(0[1-9]|1[012])[\- \/.](201)[2-9]{1})$/) != null){ 
 
    $("#result1").html("TRUE"); 
 
}else{ 
 
    $("#result1").html("FALSE"); 
 
} 
 

 
if("77.04.2017".match(/^(0[1-9]|[12][0-9]|3[01])[\- \/.](?:(0[1-9]|1[012])[\- \/.](201)[2-9]{1})$/) != null){ 
 
    $("#result2").html("TRUE"); 
 
}else{ 
 
    $("#result2").html("FALSE"); 
 
} 
 

 
if("13.66.2017".match(/^(0[1-9]|[12][0-9]|3[01])[\- \/.](?:(0[1-9]|1[012])[\- \/.](201)[2-9]{1})$/) != null){ 
 
    $("#result3").html("TRUE"); 
 
}else{ 
 
    $("#result3").html("FALSE"); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<span>is "13.04.2017" valid date: </span><b><span id="result1"></span></b><br> 
 
<span>is "77.04.2017" valid date: </span><b><span id="result2"></span></b><br> 
 
<span>is "13.66.2017" valid date: </span><b><span id="result3"></span></b><br>