纯javascript判断查询日期是否为有效日期
在众多的网站功能中,日期输入是一项常见且重要的功能。一个错误的日期输入可能导致查询无果,甚至查询到错误的信息。为了满足用户的精准查询需求,对日期进行有效性校验显得尤为重要。狼蚁网站SEO优化团队为你带来一种使用纯javascript进行日期有效性校验的方法。接下来,我将通过详细的解释和代码示例,带你了解如何实现这一功能。
当你在网站的查询框中输入日期,如“2012-3-4”,在提交查询之前,我们需要确保这个日期是有效的。以下是通过js代码实现的简单方法:
我们从查询框中获取日期字符串,并进行一些基本的清理工作。接着,我们尝试将这些字符串转换为Date对象。如果转换失败或者日期部分与预期不符,那么就抛出错误。我们还会检查开始日期是否晚于结束日期,这是不合逻辑的。
例如:
```javascript
var createTimeBegin = $(selector + " input[name='createTime_begin']").val().trim();
var createTimeEnd = $(selector + " input[name='createTime_end']").val().trim();
try {
// 判断开始时间是否为有效的日期
if (createTimeBegin !== "" && new Date(createTimeBegin).getDate() !== parseInt(createTimeBegin.match(/-\d{0,2}$/g)[0].replace(/-/g,""))) {
throw new Error();
}
// 判断结束时间是否为有效的日期
if (createTimeEnd !== "" && new Date(createTimeEnd).getDate() !== parseInt(createTimeEnd.match(/-\d{0,2}$/g)[0].replace(/-/g,""))) {
throw new Error();
}
if (Date.parse(createTimeBegin) > Date.parse(createTimeEnd)) {
alert("开始日期不应晚于结束日期!");
return;
}
// 如果日期有效,将其存储到pageObj对象中并初始化分页功能
$.extend(pageObj, {
createTimeBegin: createTimeBegin,
createTimeEnd: createTimeEnd,
});
initPagination();
} catch (e) {
alert("请输入有效的日期!");
}
```
我们还提供了一个名为`isdate`的函数,用于判断年月日是否构成一个有效的日期。这个函数首先检查年份、月份和日期是否合法,然后考虑每个月的天数限制以及闰年的特殊情况。使用这个函数可以帮助我们更精确地判断日期的有效性。
```javascript
function isdate(intYear, intMonth, intDay) {
if (isNaN(intYear) || isNaN(intMonth) || isNaN(intDay)) return false;
if (intMonth > 12 || intMonth < 1) return false;
if (intDay < 1 || intDay > 31) return false;
if ((intMonth == 4 || intMonth == 6 || intMonth == 9 || intMonth == 11) && intDay > 30) return false;
if (intMonth == 2) {
if (intDay > 29) return false;
if ((((intYear % 100 == 0) && (intYear % != 0)) || (intYear % 4 != 0)) && intDay > 28) return false;
}
return true;
}
```
以上代码段展示了如何使用JavaScript进行日期的有效性校验。希望这些内容能对你有所帮助。如果你有任何建议或疑问,欢迎提出。通过合理的日期校验,我们能提高用户的使用体验,确保查询的准确性和效率。
注:以上内容仅为演示用途,实际使用时可能需要根据具体场景进行调整和优化。
编程语言
- 纯javascript判断查询日期是否为有效日期
- 详解如何构建Promise队列实现异步函数顺序执行
- Git 教程之查看提交历史详解
- javascript实现延时显示提示框特效代码
- 基于PHP实现微信小程序客服消息功能
- PHP类的特性实例分析
- 简单谈谈PHP的垃圾回收机制
- 使用angularjs.foreach时return的问题解决
- ASP常用的函数
- php对文件夹进行相关操作(遍历、计算大小)
- 数据库清除日志文件(LDF文件过大)
- ASP.NET oledb连接Access数据库的方法
- JavaScript正则表达式验证身份证号码是否合法(两种
- js隐式转换的知识实例讲解
- php对图像的各种处理函数代码小结
- PHP获取当前文件的父目录方法汇总