if(dateString.trim()=="")returntrue
varr=dateString.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/)
if(r==null){
alert("请输入格式正确的日期\n\r日期格式:yyyy-mm-dd\n\r例 如:2008-08-08\n\r")
returnfalse
}
vard=newDate(r[1],r[3]-1,r[4])
varnum = (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4])
if(num==0){
alert("请输入格式正确的日期\n\r日期格式:yyyy-mm-dd\n\r例 如:2008-08-08\n\r")
}
return(num!=0)
}
1 短时间,形如 (23:30:06)function isTime(str)
{
var a = str.match(/^(\d{1,2})(:)?(\d{1,2})\2(\d{1,2})$/)
if (a == null) {alert('输入的参数不是时间格式') return false}
if (a[1]>24 || a[3]>60 || a[4]>60)
{
alert("时间格式不对")
return false
}
return true
}
2. 短日期,形如 (2008-09-13)
function strDateTime(str)
{
var r = str.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/)
if(r==null)return false
var d= new Date(r[1], r[3]-1, r[4])
return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4])
}
3 长时间,形如 (2008-09-13 23:30:06)
function strDateTime(str)
{
var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/
var r = str.match(reg)
if(r==null)return false
var d= new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7])
return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.getMinutes()==r[6]&&d.getSeconds()==r[7])
}
这个,如果你接触过java,或者是sql语句的话就知道表示日期有很多格式(先不说分隔符多,光不同国家的标准来说也有很多),而且如果应用的话会根据需要判断某个字符串是否符合日期格式,所以无法给出答案。不过用js判断日期除了你知道日期的格式,然后自己编写字符串处理及判断的方法以外,还有就是“正则表达式”(在字符串匹配中,这个非学不可)了。
我给你找了几个你看哪个是你需要的。
http://blog.csdn.net/weilee2009/article/details/8566962
http://hi.baidu.com/love5love/item/7fb622bb18b1afd084dd7993