Date() 及其 如何验证用户输入的日期是合法的
2013-07-05 16:51
465 查看
1、var someDate = new Date(Date.parse("May 25, 2004")); <=> var someDate = new Date("May 25, 2004");
//Date.parse()返回表示该日期的毫秒数(从UTC时间1970年1月1日午夜开始)
//如果直接将表示日期的字符串传递给Date构造函数,也会在后台调用Date.parse()
//如果传入Date.parse()方法的字符串不能表示日期,那么它会返回NaN;
2、var someDate = new Date(Date.UTC(2000, 0)); <=> var someDate = new Date("2000, 0");
//Date.UTC()返回表示该日期的毫秒数(从UTC时间1970年1月1日午夜开始)
//Date.UTC() @param 默认值为0。 年份,基于0的月份,月份中的哪一天(默认为1),小时数(0-23),分钟、秒、毫秒
//日期和时间基于本地市区而非GMT来创建
3、不同浏览器对符合日期格式但不符合日期逻辑的日期会进行不同的处理;有些会将超出范围的值替换成当前的值。
3、判断用户输入的日期是否合法(这里暂不考虑用户输入的日期为格式错误日期,只考虑日期不符合常理的情况,如 2013-02-31 )
//Date.parse()返回表示该日期的毫秒数(从UTC时间1970年1月1日午夜开始)
//如果直接将表示日期的字符串传递给Date构造函数,也会在后台调用Date.parse()
//如果传入Date.parse()方法的字符串不能表示日期,那么它会返回NaN;
2、var someDate = new Date(Date.UTC(2000, 0)); <=> var someDate = new Date("2000, 0");
//Date.UTC()返回表示该日期的毫秒数(从UTC时间1970年1月1日午夜开始)
//Date.UTC() @param 默认值为0。 年份,基于0的月份,月份中的哪一天(默认为1),小时数(0-23),分钟、秒、毫秒
//日期和时间基于本地市区而非GMT来创建
3、不同浏览器对符合日期格式但不符合日期逻辑的日期会进行不同的处理;有些会将超出范围的值替换成当前的值。
3、判断用户输入的日期是否合法(这里暂不考虑用户输入的日期为格式错误日期,只考虑日期不符合常理的情况,如 2013-02-31 )
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>Date checker</title> </head> <body> <span>输入 年月日:</span> <input id="yr" name="yr" type="text" /> <input id="mth" name="yr" type="text" /> <input id="day" name="yr" type="text" /> <input id="checker" name="yr" type="button" value="检查日期"/> </body> <script type="text/javascript" > (function(){ checker.onclick = function(){ var year = parseInt(document.getElementById("yr").value, 10) , month = parseInt( document.getElementById("mth").value, 10), day = parseInt(document.getElementById("day").value, 10), checker = document.getElementById("checker"); var dateSTr = month+'/'+day+'/'+ year, date = new Date(dateSTr), rightDate = !isNaN(date); //判断是否符合日期格式,如 "1988/02/05" 则 isNaN if(rightDate){ //如果创建的date(根据3)转换得到的日期,与当前输入的日期一致,则表示输入合法; 如”1988/02/31“则不合法 if(month == date.getMonth()+1 && day == date.getDate() && year == date.getFullYear()){ //此处注意month+1 alert("日期合法"); } else { alert("日期不合法"); } } else { alert("日期格式错误!"); } } })(); </script> </html>
相关文章推荐
- javascript验证html5自带input type="date"用户输入日期过期的方法
- Thinkphp+AJAX动态验证用户输入是否合法
- 验证Android用户输入日期
- 如何WEBI标题上放入用户输入日期
- 使用DateValidator判断用户输入的日期格式,并用DateFormatter对输入日期格式化。
- js如何验证用户输入的只能是数字?
- 如何验证日期输入是否正确?
- <java EE 项目:petstore> 从一个简单项目看 java web 如何在本jsp页面上对用户输入的格式进行限制与验证
- 如何判断日期变量的输入是否合法
- PHP中进行日期用户输入生日有效性验证
- C# 验证输入的Account是不是域合法的用户,组或机器。(User, Group, Machine)
- 如何验证TextBox输入的是一个日期格式字符串
- 如何接收用户发送的短信验证码,判断是否合法-短信验证码开发10
- js如何验证日期是否有效<包括日期是否为空,是否符合格式2013-04-17,及是否是一个合法的日期>
- javascript判断用户输入是否合法日期格式
- Thinkphp+AJAX动态验证用户输入是否合法
- 反复校验用户输入的日期,直到年、月、日都合法,计算该日在本年中为第几天?(注意考虑闰年问题)
- 如何检测用户输入的日期是否正确
- 验证用户输入的字符串是否为日期时间
- Angularjs验证用户输入的字符串是否为日期时间