求javascript注册页面的生日正则表达式

JavaScript010

求javascript注册页面的生日正则表达式,第1张

获取生日信息用正则来做不太理想,当然这却决于输入方式(表单中时间标签的设置)。

参考下:

/\d{4}\-\d{1,2}\-\d{1,2}/

因为日期有诸多要求(日期不大于当前日期,月份1-12,天数1-31,以及特殊年份、月份天数问题),除非能确认用户输入的日期是有效日期,不然使用正则会存在导致很多问题。比如上面的表达式可以匹配9999-99-99,而这并不是准确的日期格式。

不要用正则做,麻烦,可以用js自己提供的date对象,这样还能兼容一些更广泛的输入,比如两位的年份之类。

var birth=''//换成你的input的值

var birthDate = new Date(birth)

if (!birthDate.getTime()) console.log('错误的日期格式,请按照xxxx格式输入')  //错误格式

else if (birthDate<new Date('1900-01-01')) console.log('不能小于1900年')  

else  if (birthDate>=new Date('2010-01-01')) console.log('不能大于2009年')

你把日志换成你需要的提示操作即可。