2011-08-09 3 views
2

파싱 할 수없는 JSON 응답을 다시받습니다. 이 JSON 형식을 다시받을 수 있지만 정확한 형식입니다. 행마다 구문 분석을하고 경고에 모든 값을 포함시키는 방법은 무엇입니까? 미리 많은 감사드립니다!JSONP 파싱 할 수없는 JSON을 다시받습니다.

요청

$.ajax({ 
    url: apiURL+'getLocations/category/'+ category +'/countyId/'+ countyId +'/searchString/'+ searchString +'?callback=?', 
    contentType: 'application/json', 
    crossDomain: true, 
    dataType: 'jsonp', 
    callback: callTest1(), 
    complete: function(data){ 
     if(data.code != '400') 
     { 
      $.each(data, function(key, value) { 
       $.each(value, function(key, val){ 
        alert(data.id); 
       }) 
      }); 
     } 
    }, 
    success: callTest2() 
}); 

요청 단부

출력이 시도

{"Location":[{"id":0,"postcodeId":85,"categoryId":0,"location": 
    "Enfield Island Village"},{"id":0,"postcodeId":44,"categoryId":0, 
    "location":"Isle of Dogs"},{"id":0,"postcodeId":269,"categoryId":0, 
    "location":"Isleworth"},{"id":0,"postcodeId":135,"categoryId":0, 
    "location":"Islington"}] 
} 

출력단

+0

이 아닌 구문 분석이다? – cdhowie

+0

글쎄, 출력 JSON 안의 데이터를 읽을 수있는 방법을 찾을 수 없다. 나는이 사과에 대해 무지한 사과를하고 있습니다. 양해 해 주셔서 감사합니다. – user885068

+0

출력 예제는 매우 이해할 수 있습니다. – user885068

답변

1

을 시작 시작.

var data = {"Location":[{"id":0,"postcodeId":85,"categoryId":0,"location": 
    "Enfield Island Village"},{"id":0,"postcodeId":44,"categoryId":0, 
    "location":"Isle of Dogs"},{"id":0,"postcodeId":269,"categoryId":0, 
    "location":"Isleworth"},{"id":0,"postcodeId":135,"categoryId":0, 
    "location":"Islington"}] 
}; 

$.each(data.Location, function(index, val){ 
    alert(val.id + " , " + val.postcodeId + " , " +val.categoryId + " , " +val.location); 
}); 

.Location 부분이 누락되었다고 생각합니다.

하드 코딩 된 값을 사용하기가 어려우면 시도하십시오.

$.each(data.Location, function(index, datum) { 
    $.each(datum, function(key, value) { 
     alert(key + " : " + value.toString()); 
    }); 
}); 

작업 데모 : 어떤 방법으로 http://jsfiddle.net/naveen/kLEA6/

+0

답변 됨 JSFiddle http://jsfiddle.net/halsaleh/v7tr9/ – user885068