jQuery 验证器在同一字段上验证两种格式
jQuery Validator validating two formats on same field
我有一个包含多个日期字段的表单,每个日期字段都有唯一的名称和 ID 字段。我想将日期验证为 dd/mm/yyyy。我正在使用基于 php codeigniter
的 cms fuelcms,它会自动生成具有验证器数据属性的日期字段。我已将规则设置为验证 dateITA 格式 (dd/mm/yyyy),但是当我输入日期时,它似乎会检查两种格式:
- dd/mm/yyyy
- mm/dd/yyyy
我不知道是什么导致了这个问题,因为我已经禁用了我的规则,所以现在它正在根据 mm/dd/yyyy 进行验证,但我不知道它在哪里正在设置该规则,因为默认值为 dateISO (yyyy-mm-dd)。
怎样才能达到想要的效果?
HTML
<input type="text" name="date_of_birth" value=""
class="datepicker field_type_date date hasDatepicker" size="12"
placeholder="dd/mm/yyyy" required="" data-date_format="dd/mm/yy"
data-first_day="0" data-show_on="focus" id="date_of_birth" autocomplete="bday"
aria-required="true">
JS
$('#job-form').validate({
errorClass:'small text-danger',
rules: {
date_of_birth: {
dateITA: true
}
}
});
#job-form
是表格的id
您的代码:
12/12/2018
有效,但 31/12/2018
和 12/31/2018
均无效。这是因为你的内联 class
属性包含 date
,它会自动触发 jQuery Validate 的 date
方法。由于您还声明了 dateITA
,该插件同时对您的字段应用了两个不同的日期规则...... date
和 dateITA
相互冲突。
删除 date
class,dateITA
规则工作正常:
我有一个包含多个日期字段的表单,每个日期字段都有唯一的名称和 ID 字段。我想将日期验证为 dd/mm/yyyy。我正在使用基于 php codeigniter
的 cms fuelcms,它会自动生成具有验证器数据属性的日期字段。我已将规则设置为验证 dateITA 格式 (dd/mm/yyyy),但是当我输入日期时,它似乎会检查两种格式:
- dd/mm/yyyy
- mm/dd/yyyy
我不知道是什么导致了这个问题,因为我已经禁用了我的规则,所以现在它正在根据 mm/dd/yyyy 进行验证,但我不知道它在哪里正在设置该规则,因为默认值为 dateISO (yyyy-mm-dd)。
怎样才能达到想要的效果?
HTML
<input type="text" name="date_of_birth" value=""
class="datepicker field_type_date date hasDatepicker" size="12"
placeholder="dd/mm/yyyy" required="" data-date_format="dd/mm/yy"
data-first_day="0" data-show_on="focus" id="date_of_birth" autocomplete="bday"
aria-required="true">
JS
$('#job-form').validate({
errorClass:'small text-danger',
rules: {
date_of_birth: {
dateITA: true
}
}
});
#job-form
是表格的id
您的代码:
12/12/2018
有效,但 31/12/2018
和 12/31/2018
均无效。这是因为你的内联 class
属性包含 date
,它会自动触发 jQuery Validate 的 date
方法。由于您还声明了 dateITA
,该插件同时对您的字段应用了两个不同的日期规则...... date
和 dateITA
相互冲突。
删除 date
class,dateITA
规则工作正常: