在jQuery Validation脚本返回成功后,尝试比较预订表单中的日期。尝试使用validate submitHandler选项,但它没有触发,至少我没有看到我放在那里的警报,无论选择哪个日期,表单都会提交。
// Validate
if($('form').length > 0) {
$('form').validate({
rules:{
formName: 'required',
formEmail: 'required',
formPhone: 'required',
formStartDate: 'required',
formEndDate: 'required',
formParty: 'required',
formDogs: 'required',
formReferral: 'required'
},
errorPlacement: function(error, element) {
error.appendTo( element.parent('div').next('div') );
},
submitHandler: function(form) {
alert('hi');
var startDate = $.datepicker.parseDate('dd/mm/yy', $('#formStartDate'));
var endDate = $.datepicker.parseDate('dd/mm/yy', $('#formEndDate'));
if(endDate > startDate) {
alert('Please ensure your End Date is after your Start Date.');
return false;
} else {
form.submit();
}
}
});
}
在Windows 7上的Chrome 37,IE 11和Firefox 26中也是如此。
该表单基于Bootstrap 3并且开始如下: -
<form action="/booking" enctype="multipart/form-data" method="post">
使用提交按钮,如: -
<button class="btn btn-form-submit left" type="submit" name="submitForm">Submit</button>
这是一个很大的形式。