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)
}
这个,如果你接触过java,或者是sql语句的话就知道表示日期有很多格式(先不说分隔符多,光不同国家的标准来说也有很多),而且如果应用的话会根据需要判断某个字符串是否符合日期格式,所以无法给出答案。不过用js判断日期除了你知道日期的格式,然后自己编写字符串处理及判断的方法以外,还有就是“正则表达式”(在字符串匹配中,这个非学不可)了。
我给你找了几个你看哪个是你需要的。
http://blog.csdn.net/weilee2009/article/details/8566962
http://hi.baidu.com/love5love/item/7fb622bb18b1afd084dd7993
function strToDate(str) {var tempStrs = str.split(" ")
var dateStrs = tempStrs[0].split("-")
var year = parseInt(dateStrs[0], 10)
var month = parseInt(dateStrs[1], 10) - 1
var day = parseInt(dateStrs[2], 10)
var timeStrs = tempStrs[1].split("-")
var hour = parseInt(timeStrs [0], 10)
var minute = parseInt(timeStrs[1], 10) - 1
var second = parseInt(timeStrs[2], 10)
var date = new Date(year, month, day, hour, minute, second)
return date
}