<script type="text/javascript">
function checknow(){
var obj = document.getElementById("dt")
if(!/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/.test(obj.value)) alert("请输入正确的日期时间格式!")
}
</script>
<input type="text" id="dt" value="2016-09-09 11:08:33" />
<input type="button" value="检测" onClick="checknow()" />
以上实例点击检测后无报错,表示格式正确。你故意改错再检测就会出现错误提示了。
如果只需要检测日期或时间,可以自己改一下正则式,应该容易看懂的。
//函数名:CheckDateTime //功能介绍:检查是否为日期时间 function CheckDateTime(str){ var reg = /^(\d+)-(\d{1,2})-(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/var r = str.match(reg)if(r==null)return falser[2]=r[2]-1var d= new Date(r[1], r[2],r[3], r[4],r[5], r[6])if(d.getFullYear()!=r[1])return falseif(d.getMonth()!=r[2])return falseif(d.getDate()!=r[3])return falseif(d.getHours()!=r[4])return falseif(d.getMinutes()!=r[5])return falseif(d.getSeconds()!=r[6])return falsereturn true}/** 判断输入框中输入的日期格式为yyyy-mm-dd和正确的日期 */ function IsDate(sm,mystring) { var reg = /^(\d{4})-(\d{2})-(\d{2})$/var str = mystringvar arr = reg.exec(str)if (str=="") return trueif (!reg.test(str)&&RegExp.$2<=12&&RegExp.$3<=31){ alert("请保证"+sm+"中输入的日期格式为yyyy-mm-dd或正确的日期!")return false} return true}function toDateFromString( strDate ) { if (strDate.length != 8) { return null } var dtDate = null var nYear = parseInt( strDate.substring( 0, 4 ), 10 ) var nMonth = parseInt( strDate.substring( 4, 6 ), 10 ) var nDay = parseInt( strDate.substring( 6, 8 ), 10 ) if( isNaN( nYear ) == true || isNaN( nMonth ) == true || isNaN( nDay ) == true ) { return null } dtDate = new Date( nYear, nMonth - 1, nDay ) if( nYear != dtDate.getFullYear() || ( nMonth - 1 ) != dtDate.getMonth() || nDay != dtDate.getDate() ) { return null } return dtDate } YYYYMMDD的格式