下面总结了利用js来验证日期格式的几个js完整的实例,有需要的朋友可参考参考。
格式是 日/月/年
代码如下 |
|
//日期格式
['date_au', function(v) {
if (Vanadium.validators_types['empty'].test(v)) return true;
var regex = /^(d{2})/(d{2})/(d{4})$/;
if (!regex.test(v)) return false;
var d = new Date(v.replace(regex, '$2/$1/$3'));
return ( parseInt(RegExp.$2, 10) == (1 + d.getMonth()) ) && (parseInt(RegExp.$1, 10) ==
d.getDate()) && (parseInt(RegExp.$3, 10) == d.getFullYear() );
},
|
'请输入正确的日期格式,比如:28/05/2010.'],
怎么把格式改成 年-月-日,或者是 月-日-年
代码如下 |
|
/**
判断输入框中输入的日期格式为yyyy-mm-dd和正确的日期
*/
function IsDate(sm,mystring) {
var reg = /^(d{4})-(d{2})-(d{2})$/;
var str = mystring;
var arr = reg.exec(str);
if (str=="") return true;
if (!reg.test(str)&&RegExp.$2<=12&&RegExp.$3<=31){
alert("请保证"+sm+"中输入的日期格式为yyyy-mm-dd或正确的日期!");
return false;
}
return true;
}
|
例2
代码如下 |
|
//检验日期格式,合法的格式例如:2000-10-29,月份和天必须是两位,能检测闰年。
function isDate(str){
var reg=/^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-
(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|
[13579][26])00)-02-29)$/;
if (reg.test(str)) return true;
return false;
}
|
例3
只允许输入YYYY-MM-DD格式的。
代码如下 |
|
<script type=”text/javascript”>
function CheckDate()
{
var r =/^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-
(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|
[13579][26])00)-02-29)$/;
if(!r.exec(document.getElementById(“Text2″).value)){
alert(“请输入格式正确的日期nr日期格式:yyyy-mm-ddnr例 如:2010-08-08nr”);
return false;
}
else {
return true;
}
}
</script>
js判断日期格式:<br />
<input id=”Text2″ type=”text” /><br />
<input id=”Button2″ type=”button” value=”判断日期” onclick=”CheckDate();”/>
|
更多内容可参考http://www.111cn.net/wy/99/33176.htm