$.extend($.fn.validatebox.defaults.rules, {
dateCompareLE:{//小于等于
validator: function(value, param){
var varify = /^(?:(?!0000)[0-9]{4}([-]?)(?:(?:0?[1-9]|1[0-2])\1(?:0?[1-9]|1[0-9]|2[0-8])|(?:0?[13-9]|1[0-2])\1(?:29|30)|(?:0?[13578]|1[02])\1(?:31))|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)([-]?)0?2\2(?:29))$/i.test(value);
if(varify){
var endTime = $(param[0]).datetimebox('getValue');
if(endTime==""){
return true;
}
//if()
var dateEnd = $.fn.datebox.defaults.parser(endTime);
var dateStart = $.fn.datebox.defaults.parser(value);
varify = dateStart <= dateEnd;
if(!varify){
$.fn.validatebox.defaults.rules.dateCompareLE.message ="起始时间要小于或等于截止时间";
}
return varify;
}else{
$.fn.validatebox.defaults.rules.dateCompareLE.message ="请输入正确的日期格式(yyyy-mm-dd)";
return false;
}
},
message: ''
},
dateCompareGE:{//大于等于
validator: function(value, param){
var varify = /^(?:(?!0000)[0-9]{4}([-]?)(?:(?:0?[1-9]|1[0-2])\1(?:0?[1-9]|1[0-9]|2[0-8])|(?:0?[13-9]|1[0-2])\1(?:29|30)|(?:0?[13578]|1[02])\1(?:31))|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)([-]?)0?2\2(?:29))$/i.test(value);
if(varify){
var startTime = $(param[0]).datetimebox('getValue');
if(startTime==""){
return true;
}
var dateStart = $.fn.datebox.defaults.parser(startTime);
var dateEnd = $.fn.datebox.defaults.parser(value);
varify = dateEnd >= dateStart;
if(!varify){
$.fn.validatebox.defaults.rules.dateCompareGE.message ="截止时间要大于或等于起始时间";
}
return varify;
}else{
$.fn.validatebox.defaults.rules.dateCompareGE.message ="请输入正确的日期格式(yyyy-mm-dd)";
return false;
}
}
},
dateTimeCompareLE:{//小于等于
validator: function(value, param){
var varify = /^(?:(?!0000)[0-9]{4}([-]?)(?:(?:0?[1-9]|1[0-2])\1(?:0?[1-9]|1[0-9]|2[0-8])|(?:0?[13-9]|1[0-2])\1(?:29|30)|(?:0?[13578]|1[02])\1(?:31))|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)([-]?)0?2\2(?:29)) ([0-1][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$/i.test(value);
if(varify){
var endTime = $(param[0]).datetimebox('getValue');
if(endTime==""){
return true;
}
var dateEnd = new Date(Date.parse(endTime.replace(/-/g,"/"))).getTime();
var dateStart = new Date(Date.parse(value.replace(/-/g,"/"))).getTime();
varify = dateStart <= dateEnd;
if(!varify){
$.fn.validatebox.defaults.rules.dateTimeCompareLE.message ="起始时间要小于或等于截止时间";
}
return varify;
}else{
$.fn.validatebox.defaults.rules.dateTimeCompareLE.message ="请输入正确的日期格式(yyyy-mm-dd hh:mm:ss)";
return false;
}
},
message: ''
},
dateTimeCompareGE:{//大于等于
validator: function(value, param){
var varify = /^(?:(?!0000)[0-9]{4}([-]?)(?:(?:0?[1-9]|1[0-2])\1(?:0?[1-9]|1[0-9]|2[0-8])|(?:0?[13-9]|1[0-2])\1(?:29|30)|(?:0?[13578]|1[02])\1(?:31))|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)([-]?)0?2\2(?:29)) ([0-1][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$/i.test(value);
if(varify){
var startTime = $(param[0]).datetimebox('getValue');
if(startTime==""){
return true;
}
var dateEnd = new Date(Date.parse(value.replace(/-/g,"/"))).getTime();
var dateStart = new Date(Date.parse(startTime.replace(/-/g,"/"))).getTime();
varify = dateEnd >= dateStart;
if(!varify){
$.fn.validatebox.defaults.rules.dateTimeCompareGE.message ="截止时间要大于或等于起始时间";
}
return varify;
}else{
$.fn.validatebox.defaults.rules.dateTimeCompareGE.message ="请输入正确的日期格式(yyyy-mm-dd hh:mm:ss)";
return false;
}
}
},
});
EasyUI 时间格式验证
最新推荐文章于 2019-05-15 17:07:00 发布