2010-11-25 2 views
3

나는이 아약스 체크를 통해 이름이 발견되었거나 발견되지 않았는지 확인합니다. 그것은 데이터 반환 발견되면 잘 작동하지만 nofound를 반환하면, 나는 그것을 방아쇠를 다시 제출해야합니다.jQuery ajax 양식을 확인하고 제출하십시오. 아약스가 nofound를 반환 할 때 항상 두 번 제출해야합니다.

아무에게도 제안이나 더 나은 해결책이 있습니까? 당신이 아닌 비동기 아약스 호출을 수행 할 수 있습니다

답변

1

:)

$('#formletter').submit(function() { 
    var name = $('#name').val(); 

    if ($.formLoading != false) { 
     $.ajax({ 
     type: 'POST', 
     url: "submit_ajax_contents.php", 
     data: "namecheck="+name, 
     success: function(data) { 
      if(data == 'nofound'){ 
      $.formLoading = false; 
      $('#formletter').submit(); 
      }else{ 
      alert('found'); 
      $.formLoading = true; 
      } 
     } 
     }); 
    return false; 
    } else { 
    return true; 
    } 

    }); 

}); 

많은 감사 : (나는이 코드를 테스트하지 않았다) 즉, AJAX 호출이 실패 할 경우

$('#formletter').submit(function(event) { 
    var name = $('#name').val(); 
    var found = false; 
    $.ajax({ 
     async: false, 
     type: 'POST', 
     url: "submit_ajax_contents.php", 
     data: "namecheck="+name, 
     success: function(data) { 
      if(data == 'found') 
       found = true; 
     } 
    }); 
    if (found) 
     event.preventDefault(); 
}); 
+0

주, 'found'가'false'라고 가정합니다 (즉, 값은 변경되지 않습니다). – cambraca

+0

그리고 이름 확인이 완료되었다는 표시를 사용자에게 주어야합니다. 그래서 사용자는 놀라지 않습니다. 몇 초가 지나면 아무 일도 없었던 것 같습니다. – cambraca

+0

예, 그 일을하는 것처럼 보였습니다, 감사합니다 :) – Joannes

관련 문제