jQuery(或javascript)验证日期范围
jQuery (or javascript) validate date Range
可能的重复项:
使用 Javascript,如何确保日期范围有效?
我允许用户在页面上输入日期,我的一位测试人员正确地破坏了数据库保存,并出现以下错误:
SqlDateTime overflow。必须介于 1/1/1753 12:00:00 AM 和 12/31/9999 11:59:59 PM 之间。
在将日期发送到服务器之前,是否有一个现有的函数可以在 jQuery 或 JavaScript 的客户端上验证这一点,以便我可以向用户提供反馈?我宁愿不必写我自己的(可能是不完整的)。
谢谢
javascript 重载了>
和<
比较运算符来处理日期。
if (yourDate > new Date('1/1/1753 12:00:00 AM') &&
yourDate < new Date('12/31/9999 11:59:59 PM')) {
// date is in your valid range
} else {
// date is not in your valid range
}
http://jsfiddle.net/jbabey/UB9NR/
请记住,JavaScript验证只是为了性能,不会增加安全性;它应该始终补充服务器端验证。
你可以尝试jQuery验证插件在客户端处理这个问题。但不要只在客户端中这样做。在发送到数据库之前,始终始终在服务器端执行此操作。
根据jQuery文档,代码可以像这样简单。
$("#myform").validate({
rules: {
field: {
required: true,
date: true
}
}
});
如果你想要自定义日期格式,这个答案值得一看
使用日期选择器插件 http://jqueryui.com/demos/datepicker/#min-max并使用日期范围方法限制用户输入错误的范围
http://jqueryui.com/demos/datepicker/#date-range
法典
$(function() {
$( "#from" ).datepicker({
defaultDate: "+1w",
changeMonth: true,
numberOfMonths: 3,
onSelect: function( selectedDate ) {
$( "#to" ).datepicker( "option", "minDate", selectedDate );
}
});
$( "#to" ).datepicker({
defaultDate: "+1w",
changeMonth: true,
numberOfMonths: 3,
onSelect: function( selectedDate ) {
$( "#from" ).datepicker( "option", "maxDate", selectedDate );
}
});
});
你需要date js库。我认为这个函数就是你要找的Date.validateDay。请参阅文档
相关文章:
- 如何在Javascript中验证日期期间与其他日期期间的交叉
- 如何验证日期、月份和日期的3个独立输入字段;年使用jquery或javascript
- 使用MomentJs在Nodejs中验证日期
- 如何使用javascript将验证日期设置为不小于文本框中的开始日期
- 验证日期是否早于当前日期的日期
- 如何在 javascript 中验证整数是否为验证日期
- 通过 jQuery 验证日期字符串格式的最佳方法
- 如何验证日期必须从两个日期中不少于一年
- 验证日期输入 - 最小值和最大值
- jQuery(或javascript)验证日期范围
- 使用时刻验证日期时出现问题.js按格式
- 焦点将放在jquery中的验证日期选择器字段上
- 什么是用于验证日期格式(如月/年)的正则表达式
- 如何使用 HTML 验证日期范围
- 日期验证日期选取器
- 使用提交验证日期输入字段
- 如何在 JavaScript 中使用格式“MMM DD, YYYY h:mm:ss A”验证日期
- 正在验证日期字段's使用angularJS
- 如何在日期选择器中验证日期时间
- new Date转换无效日期,可以'无法正确验证日期