gpt4 book ai didi

javascript - 使用 JQuery Validate 以 dd/mm/yyyy 格式验证日期

转载 作者:IT王子 更新时间:2023-10-29 03:16:34 32 4
gpt4 key购买 nike

我正在输入出生日期和死亡日期。需要验证

  1. 死亡日期应早于出生日期
  2. 日期格式为 dd/mm/yyyy
  3. 日期小于或等于今天。

Validate 没有按预期工作,无法找出问题所在。请帮忙。

Fiddle code

使用的 JS 库

  1. 用于日历/日期选择器的 JQuery UI
  2. JQuery 验证表单验证
  3. 验证库的其他方法

    var today = new Date();
    var authorValidator = $("#itemAuthorForm").validate({
    rules : {
    dateOfBirth : {
    required : false,
    date : true,
    dateITA : true,
    dateLessThan : '#expiredDate'
    },
    expiredDate : {
    required : false,
    date : true,
    dateITA : true,
    dateGreaterThan : "#dateOfBirth"
    }
    },
    onfocusout : function(element) {
    if ($(element).val()) {
    $(element).valid();
    }
    }
    });
    var dateOptionsDOE = {
    maxDate : today,
    dateFormat : "dd/mm/yy",
    changeMonth : true,
    changeYear : true,
    onClose : function(selectedDate) {
    $("#dateOfBirth").datepicker("option", "maxDate", selectedDate);
    }
    };
    var dateOptionsDOB = {
    maxDate : today,
    dateFormat : "dd/mm/yy",
    changeMonth : true,
    changeYear : true,
    onClose : function(selectedDate) {
    $("#expiredDate").datepicker("option", "minDate", selectedDate);
    }
    };

    jQuery.validator.addMethod("dateGreaterThan",
    function(value, element, params) {
    if ($(params).val() === "")
    return true;

    if (!/Invalid|NaN/.test(new Date(value))) {
    return new Date(value) > new Date($(params).val());
    }
    return isNaN(value) && isNaN($(params).val())
    || (Number(value) > Number($(params).val()));
    }, 'Must be greater than {0}.');
    jQuery.validator.addMethod("dateLessThan",
    function(value, element, params) {
    if ($(params).val() === "")
    return true;

    if (!/Invalid|NaN/.test(new Date(value))) {
    return new Date(value) < new Date($(params).val());
    }

    return isNaN(value) && isNaN($(params).val())
    || (Number(value) < Number($(params).val()));
    }, 'Must be less than {0}.');
    $("#expiredDate").datepicker(
    $.extend({}, $.datepicker.regional['en-GB'], dateOptionsDOE));
    $("#dateOfBirth").datepicker(
    $.extend({}, $.datepicker.regional['en-GB'], dateOptionsDOB));

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com