用正则表达式判断日期,年份是有限的,不过是绝对够用的。这是js的判断日期的: var regex_date=new RegExp("^(((((16|17|18|19|20|21|22|23|24|25)([13579][26]))|((16|20|24)([02468][048]))|((17|18|19|21|22|23|25)(([02468][48])|([2468][0]))))((\\-)|/)0?2((\\-)|/)29)|(((20[0-9][0-9])|(19[0-9][0-9]))((\\-)|/)((((0?[1-9])|(1[0-2]))((\\-)|/)((0?[1-9])|(1\\d)|(2[0-8])))|(((0?[13578])|(1[02]))((\\-)|/)31)|(((0?1)|(0?[3-9])|(1[0-2]))((\\-)|/)(29|30)))))$");改改就是。
var regex_date=new RegExp("^(((((16|17|18|19|20|21|22|23|24|25)([13579][26]))|((16|20|24)([02468][048]))|((17|18|19|21|22|23|25)(([02468][48])|([2468][0]))))((\\-)|/)0?2((\\-)|/)29)|(((20[0-9][0-9])|(19[0-9][0-9]))((\\-)|/)((((0?[1-9])|(1[0-2]))((\\-)|/)((0?[1-9])|(1\\d)|(2[0-8])))|(((0?[13578])|(1[02]))((\\-)|/)31)|(((0?1)|(0?[3-9])|(1[0-2]))((\\-)|/)(29|30)))))$");改改就是。
有道理,我一般都是用SimpleDateFormat.parse()来验证,这个比较简单也好用。当然你可以对输入框进行输入限制,如只能输入数字等。