2014-10-16 5 views
0

나는 .when으로 getJSON 요청을 연결합니다. URL이 세트가 URL3 또는 url4 또는 더 많거나 만이 진행할 수 있습니다 url0 포함 그렇다면

$.when($.getJSON(url0),$.getJSON(url1), $.getJSON(url2)).done(function() { 
    $.each(arguments, function(index, result) { … 

가 어떻게이를 작성할 수 있습니다

코드는 다음과 유사?

URL 저장소를 파일이나 로컬 저장소에 저장합니다.

+0

배열을 만들면 $ .when 안에 배열 값을 처리 할 수 ​​있습니다. –

+0

고마워요. 예? – user1452893

+0

좋아요, 잠깐만 기다려주세요 –

답변

2
var list = ['obj1', 'obj2', 'obj3', 'obj4', 'obj5']; 
    var callback = function() { 
    console.log("done"); 
    }; 
    var requests = []; 

    for(i = 0; i < list.length; i++) { 
     requests.push($.ajax({ 
     url: 'url', 
     success: function() { 
      console.log('suc'); 
     } 
     })); 
    } 

    $.when.apply(undefined, requests).then(function(results){callback()}); 

내가 배열에 그것을로드 할 수

JSFIDDLE 데모 작동하는 방법을 보여줄 수 있도록 좀 더 자세한 정보를 제공 할 수 있습니다 : http://jsfiddle.net/MBZEu/4/

또는 당신이 시도 할 수

var urlArr = ['url1', 'url2', 'url3', 'url4', 'url5']; 
    var callback = function() { 
    console.log("done"); 
    }; 
    var requests = []; 

    for(i = 0; i < urlArr.length; i++) { 
     requests.push($.getJSON(urlArr[i])); //or something similar which can push url in array 
    } 

    $.when.apply(undefined, requests).then(function(results){callback()}); 

또는 이것을 사용하여 req로 진행되는 작업

requests.push($.getJSON(urlArr[i], function(res){console.log(res)})); 
+0

감사합니다. 나는 실제 URL을 만드는 데 사용되는 로컬 저장소에 값을 저장하고 있습니다. 다음과 같이 작동합니다. [JSON.parse (window.localStorage.getItem ('item : 1')). url]. – user1452893

+0

이런, 전 세계 사람들이 왜 시도하기도 전에 이것을 왜곡 할까? – user1452893

+0

예 원본이 올바르지 않습니다. \ –

관련 문제