나는 다음과 같은 매개 변수가 있습니다
a = [{param:'a'}, {param:'b'}, {param:'c'}]
내가 같이, 각 매개 변수에 대한 GET 요청을하고 싶습니다 :
a.map(function(ai){return $.get('myapi/get?ai='+ai.param)})
을
모든 get 요청이 완료되면 어떻게해야합니까?
나는 다음과 같이 $ .when를 사용하여 시도했다 : 나는 do_something_with(a)
를 호출 할 때 나는 새로운 .result
속성을 가지고 있지 않는 한
$.when(
a.map(function(ai){return $.get('myapi/get?ai='+ai)})
)
.done(function(results){
results.forEach(function(ri, i){
ri.success(function(result){
a[i].result = result
}
}
do_something_with(a)
}
불행히도 나는 명확하게 $.when().done()
관용구를 오해하고있다. 나는 이 하나의 배열을보고 있기 때문에 get
이 끝나기를 기다리는 것과는 반대로 .done()
으로 똑바로 넘어갑니다.
도움이 될 것입니다.
'ri.success'란 무엇입니까? 'ri'는 AJAX 호출에 의해 반환되는 결과입니다 (또는 코드의 다른 에러가 아닌 경우). 지연된 /'jqXHR' 객체가 아닙니다. – Tgr