错误的datepicker输入字段需要验证

问题描述 投票:0回答:1

我正在以dd/mm/yyyy格式输入出生日期并使用datepicker插件

<input type="text" id="birth_date" name="birth_date" value="" class="form-control date">

而日期类的jQuery是

$('.date').datepicker({
    todayBtn: "linked",
    keyboardNavigation: false,
    forceParse: false,
    calendarWeeks: true,
    autoclose: true,
    format: 'dd/mm/yyyy'
});

当我使用jQuery Validate验证输入字段时,它给出了错误“请输入有效日期”。仅适用于dd/mm/yyyy格式,相反它适用于mm/dd/yyyy格式

$("#frm").validate({
    rules: {
        first_name: { required: true },
        date_of_birth: { required: true }
    },
    messages: {
        first_name: { required: 'Please enter first name' },
        date_of_birth: { required: 'Please select the date of birth' }
    },
    errorPlacement: function (error, element) {
        error.insertAfter(element);
    },
    submitHandler: function(form) {
        form.submit();
    }
});

为什么我收到此错误,因为我只验证required字段?

jquery datepicker jquery-validate
1个回答
1
投票

“为什么我收到此错误,因为我只验证必填字段?”

jQuery Validate插件可以通过多种方式获取规则,包括但不限于......

  • rules方法的.validate()对象中声明。
  • HTML5内联属性,例如required="required"
  • 类名,例如class="required"

当您在class="date"字段上使用input时,您将在jQuery Validate插件中调用date规则。从date删除input类。如果您依赖于date类来获得视觉样式,那么您必须将此类的名称更改为其他类。

© www.soinside.com 2019 - 2024. All rights reserved.