2014-07-21 2 views
0

구조에 알 수없는 양의 값을 가진 배열이 있습니다 (['someNumber0', 'someNumber1',..]). 이 숫자는 데이터 조회 문자열로 내 아약스 호출에 전달되어야합니다. 캐치는 먼저 각 번호의 이름을 지정해야합니다.

해킹을 시도하고 있지만 json 선택기 (?)를 동적으로 설정할 수 없어 작동하지 않습니다.json 선택기를 동적으로 설정하십시오.

var zipArray = $("#enteredValue").val().split(','); 
    var dataObj = {}; 
    var i = 0; 

    zipArray.forEach(function (value) { 
     var queryString = "zip" + i; 
     ++i; 
     dataObj = { queryString: value }; //does not pass the var (querystring) 
    }); 
    console.log(dataObj) 

    $.ajax({ 
     type: 'GET', 
     url: "http://localhost:49528/Proxy.aspx", 
     data: dataObj, 
     dataType: 'json', 
     success: function (json_results) { 
      SucceededCallback(json_results); 
     } 
    }); 

제안 사항?

+1

인덱스'i'를 수동으로 추적하는 대신'forEach' 이터레이터를'function (value, i) {...}'로 작성할 수 있습니다. – SimpleJ

답변

3

당신은 당신이 한 루프에 dataObj 때마다 덮어 쓰기했습니다 :

dataObj = { queryString: value }; // overwrites dataObj 

는 대신 이렇게 :

dataObj[queryString] = value; // adds a new property to dataObj or modifies existing property 

하면 문제의 근본해야한다고.

관련 문제