클라이언트 측 유효성 검사를 위해 jQuery 유효성 검사 플러그인을 사용하는 양식이 있고 AJAX를 통해 제출합니다. 양식을 제출 한 후 자체 재설정을 원합니다. 나는 .resetForm()
메서드를 사용하여 작동하는 필드를 재설정했지만 문제는 유효성 검사 플러그인이 포커스가있을 때 즉시 필드의 유효성 검사를 시도하고 새 제출에 입력을 입력하기 전에 오류가 발생한다는 것입니다.jQuery 유효성 검사 resetForm()이 onFocus 유효성 검사를 재설정하지 않음
예 흐름 :
처음- 트리거 검증
- 수정 검증, AJAX
- 전화 .resetForm()를 통해 양식을 제출, 필드는 성공적으로 다시 을 양식을 작성하는
- 시도를 지워집니다
- 필드에 집중 (내 경우 전자 메일 유효성 검사)
- 입력을 입력하기 전에 va 그리고 그것이 잘못되었다고 말했습니다.
일반적으로 플러그인은 틀렸다고 말하기 전에 입력을 입력하게합니다. 폼을 실제로 재설정하고 포커스 유효성 검사를 모두 끄지 않고 유효성 검사를 다시하지 않을 수 있습니까?
감사합니다. 다음은 정리 된/간단한 코드 샘플입니다.
var v = $("form").validate({
submitHandler: function(form) {
//resetForm is a method on the validation object, not the form
v.resetForm();
form.reset();
}
});
듯 :
// Validation
$('#registerForm').validate({
submitHandler: function(form) {
$(form).ajaxSubmit({
success: function(response) {
if(response == 'success') {
resetMyForm();
}
else {
alert('unsuccessful');
}
}
})
}
});
})
function resetMyForm() {
$('#registerForm').resetForm();
v.prepareForm(); // Tried adding this, no help
v.hideErrors(); // Tried adding this, no help
}
유효성 검사가 트리거되면? 제출 또는 초점에? –
두 가지 모두에서 유효성을 검사합니다. – Ryan