j查询开始时间/结束时间验证

jquery start time /end time validation

本文关键字:时间 验证 结束 开始时 查询 开始      更新时间:2023-09-26

我需要验证开始时间和结束时间。我似乎得到了验证部分工作,但是当两者都没有价值时,我不需要验证,所以不需要它。

$.validator.addMethod("endTimeRange", function() {
        var n=new Date();
        var st = Date.parse( n.getMonth()+1+'/'+n.getDate()+'/'+n.getFullYear() + ' ' + $("#startTime").val());
        var nd = Date.parse( n.getMonth()+1+'/'+n.getDate()+'/'+n.getFullYear() + ' ' + $("#endTime").val());
        return  nd > st;
    }, "Please specify a correct end time, the end time must be before the second.");
    $.validator.addMethod("startTimeRange", function() {
        var n=new Date();
        var st = Date.parse( n.getMonth()+1+'/'+n.getDate()+'/'+n.getFullYear() + ' ' + $("#startTime").val());
        var nd = Date.parse( n.getMonth()+1+'/'+n.getDate()+'/'+n.getFullYear() + ' ' + $("#endTime").val());
        return  st < nd;
    }, "Please specify a correct start time, the start time must be after the end time.");

startTime: {
             required: function(element) {
             return $("#endTime").val().length > 0;
            },
            startTimeRange:true
        },
        endTime: {
             required: function(element) {
             return $("#startTime").val().length > 0;
            },
            endTimeRange:true
        },

首先,您的两种验证方法执行相同的操作。要在其中一个或两个字段为空时实现成功验证,只需将它们添加到返回中:

// default is true
var isValid = true;
// if either value is empty, dont validate
if ($("#endTime").val() !== '' && $("#startTime").val() !== '') {
    // start time must be before end time
    isValid = startTime <= endTime;
}
return isValid;