使用Jquery从给定的日期验证年份
Validate Year from the given date using Jquery
如何使用jquery验证日期中的年份?
例如,如果我有像"01/05/0001"
这样的日期,它应该给出一个错误。
假设有效年份介于1500
和当前年份之间,即此处的2015
,因此验证将如下所示:
代码:
var str = "01/05/0001";
var year = str.match(/'/('d{4})/)[1];
var currYear = new Date().toString().match(/('d{4})/)[1];
if (year >= 1500 && year <= currYear) {
alert(year + ' is valid.');
} else {
alert(year + ' is an invalid year !');
}
解释:
我们获取日期并提取年份,并将其与给定的上一年和当前年份进行比较。
您不需要jQuery。使用纯JS操作字符串并进行简单的检查。假设如果年份大于1900
,则认为年份有效:
var str = "01/05/0001";
var year = str.split("/").pop();
if (!(year > 1900)) {
alert("Invalid year: " + year);
}
我建议您使用日期选择器并设置最小日期( I)。E,年份范围)像这样:
$("#textBox").datepicker({
changeMonth: true,
changeYear: true,
yearRange: '1900:+0'
});
jquery有Date对象,你可以用它来转换你的字符串格式的日期在jquery中,然后获取年,月,日。
var date = new Date( "01/05/0001");
var year = date.getFullYear();
var month = date.getMonth();
var day = date.getDate();
if(year > 1950){
//your valid condition code
}
else{
// invalid condition code
}
我使用jquery验证器。这节省了我很多时间。
jQuery.validator.addMethod("checkYear", function(value, element) {
var year = $(element).val();
return (year > 1950) && (year <= (new Date()).getFullYear());
}, "Invalid year");
使用:field_year: {
required: true,
checkYear:true
}
希望这有帮助。
相关文章:
- 两位数的月份日期验证
- MVC3使用globalize库脚本进行日期验证
- AngularJs日期验证;我不适用于IE和Mozilla
- 日期验证参数
- Javascript - 需要日期验证 IF 语句
- angularjs提交表单中的开始日期结束日期验证应被禁用
- JavaScript日期验证RegEx或JS
- HTML5日期验证
- 使用弹出窗口进行动态日期验证
- 基于客户端日期格式的Javascript日期验证
- 使用MaskedEditExtender进行日期验证
- 如何在日期选择器中给出出生日期验证
- 日期验证失败,因为我猜是日期格式
- 文本框日期验证 mm/dd/yyyy classic asp , JavaScript.
- 从当前日期到 3 年之前的 Javascript 日期验证
- asp 文本框控件上的必填字段验证和当前日期验证
- 在 javascript 中对月份进行日期验证
- 使用 JavaScript 进行日期验证
- 日期验证日期选取器
- J查询无效日期的日期验证