내 코드는 "return false"대신에 "result"에 포함 된 데이터가 말하는 경우 허용하고 싶습니다. 이것을 어떻게 할 수 있습니까?
7
A
답변
3
이처럼 할 수있는 :
다시 게시하고 떠난다 때문에$.ajax({
url: 'add.html',
data: $('#post_form').serialize(),
dataType: 'json',
type: 'post',
success: function(result) {
retVal = formCheck(result);
if(retVal)
$('#post_form').unbind('submit').submit();
else
alert('Error with your form! Oh crap!');
}
});
, 이것은 단지 성공하면이 핸들러를 바인드 해제하고 호출 할 때 일반적으로 발생 제출할 수 있습니다, 그래서 코드 실행하지 않고 다시 확인하지 않으면 제출 만합니다.
0
success: function(result) { ... document.forms.post_form.submit(); }
2
일반적인 양식 제출을 방지하기 위해 항상 이벤트 처리자 끝에 false
을 반환하는 것이 좋습니다. 제출 핸들러가 $.ajax
호출은 다음 코드 때문에, 실행이 비현실적 완료되기 전에 해고
$('#post_form').submit(function() {
$("#ajax_bar_loader").show();
$.ajax({
url: 'add.html',
data: $('#post_form').serialize(),
dataType: 'json',
type: 'post',
success: function(result) {
if(result == 'something') {
alert("some error happened");
} else {
// assuming we're visiting the form's action
window.location.href = $(this).attr("action");
}
}
});
return false;
});
성공 콜백에 의존 : $.ajax
에 성공 콜백 내에서 조건부 서버의 응답을 기반으로 리디렉션 수 성공 콜백이 실행되기 전에 평가 될 가능성이 매우 높습니다 ($.ajax
은 비동기 적으로 실행됩니다).
+0
하지만 실제로 양식 데이터를 양식의 동작에 제출하지는 않습니까? –
0
이 문제가 제대로 작동하는지 확신 할 수 없지만 AJAX 요청을 동기식으로 만든 경우 어떻게해야합니까?
나는이 "작업"더미 코드를 가지고, 그것은 아약스 요청을 발생시킨 다음 부울을 설정합니다. 그런 다음 양식은 부울을 기반으로 true 또는 false를 반환합니다.
$(document).ready(function() {
$('form').submit(function() {
var should_return = false;
$.ajax({
async: false,
url: 'test.php',
type: 'post',
success: function() {
// Do some type of check
should_return = true;
}
});
return should_return;
});
});
관련 문제
- 1. jQuery AJAX 제출을 사용하여 양식을 처리/제출하지 않으려면 어떻게해야합니까?
- 2. Ajax 양식 제출을 막기 위해 jQuery.validate가 필요합니다.
- 3. jQuery Form 플러그인을 사용하여 일시적으로 양식 재 제출을 방지하려면 어떻게해야합니까?
- 4. Rails 2.3.8 양식 도우미로 AJAX 제출을 수행하려면 어떻게해야합니까?
- 5. Asp.net이 Ext JS 양식 제출을 Ajax 요청으로 인식하도록하려면 어떻게해야합니까?
- 6. jQuery 유효성 검사 - 자동 제출을 방지하려면 어떻게해야합니까?
- 7. jQuery 유효성 검사를 제대로 실행하면서 양식 제출을 하나만 보장하려면 어떻게해야합니까?
- 8. jQuery를 사용하여 양식 제출을 중단하는 방법
- 9. JQUERY를 사용하여 양식 제출을 중단하는 방법은 무엇입니까?
- 10. Jquery ajax in ASP.Net 양식
- 11. ASP.NET jQuery Ajax 게시 양식
- 12. jQuery & AJAX 로그인 양식
- 13. 양식 제출을 사용하여 HTML에서 PHP로 변수 전달하기
- 14. Ajax 호출이 실패했습니다. Jquery .ajax 함수를 사용하여 간단한 요청
- 15. 중복 Ajax 제출을 중단 하시겠습니까?
- 16. 콜백을 사용하여 jQuery 함수를 작성하는 방법은 무엇입니까?
- 17. drupal은 양식 제출을 처리 할 함수를 어떻게 선택합니까?
- 18. event.preventDefault() jQuery Mobile .live() 이벤트에서 양식 제출을 막지 못함
- 19. HTMLpurifier를 사용하여 일부 속성을 허용하려면 어떻게해야합니까?
- 20. PHP를 사용하여 drupal 양식 api에서 양식 제출을 제한하는 방법
- 21. RoR, Jquery, Ajax 양식 오류
- 22. ajax 양식 성공시 jquery show 대화 상자
- 23. 확인란을 클릭하여 양식 제출을 트리거하는 방법은 무엇입니까?
- 24. jQuery/Ajax 양식 성공 메시지
- 25. json 응답이있는 jQuery ajax 양식
- 26. jQuery 유형 양식 제출을 위해 입력 유형 = 이미지 제출이 필요합니까?
- 27. 셰어 포인트가 양식 제출을 재정의합니다.
- 28. jquery 유효성 확인을 사용하는 Ajax 양식
- 29. Ajax 제출을 위해 jQuery UI Autocomplete (Combobox)에 대한 이벤트 핸들러를 올바르게 등록하려면 어떻게해야합니까?
- 30. AJAX 쿼리로 만든 jQuery 모니터링 양식 필드
jquery에서 먼저 바인딩을 해제해야합니까? 그것은 양식을 정확하게 다시 낭비하는 어느 쪽이든을 제출할 것입니까? –
@Jeff - 전송 처리기에서 발생하기 때문에 그렇지 않은 경우이 코드가 다시 실행됩니다. –
@ 닉 감사하지만 그것을 반환 false를 실행하는 경우에도 여전히 제출할 것이다; 옳은? –