这篇文章主要讲解了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实现时间日期校验的代码详解有进一步的了解,如果还想学习更多内容,欢迎关注创新互联行业资讯频道。