2012-07-03 5 views
1

저는 json, js 등등을 처음 사용합니다. 그래서이 모든 것에 대해 약간 혼란 스럽습니다. httprequests 등 응답에서 데이터를 추출하려고합니다. 먼저 XMLHttpRequest를했지만, jquery와 비슷한 프레임 워크를 사용하는 것이 더 좋으며, jquery mobile을 이미 사용하고 있으므로 자연 스럽다고 느꼈습니다.Http 요청, 데이터 추출

이제는 "응답"에서 데이터를 가져 오는 방법이 있습니다.

{"list":null,"data":{"id":95,"picture":"/content/picture/icons/Rome","text":"En galning hældte forleden 1 ton sukker i Roms officielle vandforsyning","appId":1,"textHeader":"Rome sweet Rome!!","localAction":"url(http://www.b.dk)","sortOrder":0,"lastCheck":null},"expires":2592000000,"server":null} 

을 내가 jquery에서 예제를 따라 할 때 지금은 다시 개체를 얻을 :

XMLHttpRequest.response 텍스트는 다음과 같습니다. . 그러나 데이터 아무것도 *

그들의 코드 :

var startUrl = "http://localhost:8080"; 
function httpGet(theUrl) 
{ 
    $.getJSON(startUrl+theUrl, 
     function(data){ 
      alert(data); 
      $.each(data.items, function(i,item){ 
       alert(i+item); 
      }); 
     }); 
} 

어떻게 밖으로 내 코드를 얻으려면?

+0

정확히 어떻게 코드를 만들 수 있습니까? – shxfee

+1

먼저 답장에 .item이 없으므로 아무 것도 보이지 않습니다. "데이터. *"를 사용하여 개체 속성에 액세스 할 수 있습니다. repsonse 사용에서 ID를 얻는 예제 : data.data.id; – xdevel

+1

[this] (http://stackoverflow.com/questions/2487841/jquery-parse-json-multidimensional-array) 도움을받을 수 있습니다. – Jebin

답변

1

getJSON을 사용하면 데이터 결과가 JSON 문자열의 키 값과 일치하는 속성을 가진 Javascript 객체로 자동 변환됩니다. 그래서 귀하의 개체 속성은 "목록", "데이터", "만료"및 "서버"것입니다.

"데이터"부동산 등 "ID", "사진", "텍스트"처럼에서 볼 수있는 특성을 가진 다른 객체가 될 것이다

그래서 데이터는 단지 객체처럼 참조에 액세스 할

:

var picture = data.data.picture; 
var text = data.data.text; 

물론 그런 값을 vars에 넣지 않아도됩니다. 나는 그들을 참조하는 방법을 보여줄뿐입니다.

+0

Jebin의 답변은 정말 좋았고, 내가 필요로하는 것이었다. 당신의 질문이 내 질문과 가장 잘 어울릴지라도 ;-) 내가 말하는 것은 감사합니다. D –

+0

당신은 천만에요. 다행히 해결 되었으면 좋겠습니다. – davidethell