这篇文章主要讲解了js实现时间日期校验的代码详解,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。

成都创新互联公司是一家专注网站建设、网络营销策划、微信小程序、电子商务建设、网络推广、移动互联开发、研究、服务为一体的技术型公司。公司成立十年以来,已经为上千多家成都自上料搅拌车各业的企业公司提供互联网服务。现在,服务的上千多家客户与我们一路同行,见证我们的成长;未来,我们一起分享成功的喜悦。
1. 通用的时间校验方式
$.validator.addMethod("validatestart", function(value, element) {
var start = new Date($('#startTime').val()).getTime();
var end = new Date($('#endTime').val()).getTime();
if(end < start){
return false;
}else{
return true;
}
}, "开始时间必须小于结束时间!");
$.validator.addMethod("validateend", function(value, element) {
var start = new Date($('#startTime').val()).getTime();
var end = new Date($('#endTime').val()).getTime();
if(end < start){
return false;
}else{
return true;
}
}, "结束时间必须大于开始时间!");2. 如果用的laydate组件,也可以用以下的方法
var startTime = "";
var endTime = "";
startTime = laydate.render({
elem : '#startTime',
type : 'datetime',
trigger: 'click', //使触发方式为click,解决一闪而过的问题
change: function(value, dates, edate){ //实现双击可选中
$(".layui-laydate").find("td[class='layui-this']").dblclick(function(){
$(".layui-laydate").remove();
$("#startTime").val(value);
endTimeControl(date); //控制结束时间的最小值
});
},
done : function(value, date){
endTimeControl(date);
}
});
endTime = laydate.render({
elem : '#endTime',
type : 'datetime',
trigger: 'click', //使触发方式为click,解决一闪而过的问题
change: function(value, dates, edate){ //实现双击可选中
$(".layui-laydate").find("td[class='layui-this']").dblclick(function(){
$(".layui-laydate").remove();
$("#endTime").val(value);
startTimeControl(date);
});
},
done : function(value, date){
startTimeControl(date);
}
});
/** 结束时间控制 */
function endTimeControl(date){
endTime.config.min = {
year: date.year,
month: date.month - 1,
date: date.date,
hours: 0,
minutes: 0,
seconds: 0
};
};
/** 开始时间控制 */
function startTimeControl(date){
startTime.config.max = {
year: date.year,
month: date.month - 1,
date: date.date,
hours: 0,
minutes: 0,
seconds: 0
};
};看完上述内容,是不是对js实现时间日期校验的代码详解有进一步的了解,如果还想学习更多内容,欢迎关注创新互联行业资讯频道。