2011-08-10 4 views
0

AJAX를 통해 여러 소스 (xml 또는 JSON 형식)에서 데이터를 수집하고 이러한 데이터 세트를 사용하는 함수를 실행해야합니다.여러 소스에서 데이터 수집

함수가 실행되기 전에 모든 AJAX 호출이 성공했는지 어떻게 확인할 수 있습니까? 이상적으로는 비동기 호출을 유지하여 응답 시간을 최소화하고 싶습니다.

답변

0

개념적으로는 다음과 같이 작동합니다 :

  1. 를 사용하여 비동기 호출을.
  2. 각 호출에 대한 성공 처리기를 코딩합니다.
  3. 호출이 성공하면 일반적인 위치에 데이터를 저장 한 다음이 호출이 완료되었음을 기록합니다.
  4. 각 성공 처리기의 끝에서 모든 데이터를 지금 사용할 수 있는지 확인하고, 사용 가능한 경우 모든 데이터를 사용할 수 있는지 확인합니다.

아약스 호출에 대한 일부 의사 코드 :

results = []; 
$.ajax({ 
    // other parameters here 
    success: function(data) { 
     results.push(data); 
     checkResults(); 
    }; 
}); 

function checkResults() { 
    // if all five results are in, then we're ready to process them 
    if (results.length >= 5) { 
     processResults(results); 
    } 
} 
관련 문제