2009-02-05 9 views
6

나는 내 서버의 PHP 스크립트에 POST ajax 요청을하는 응용 프로그램에서 일하고있다. 스크립트는 데이터베이스를 쿼리하고 레코드 행을 배열로 반환합니다. (ID, 제목 등의 요소가 포함 된 각 행에 대해 하나의 배열). 그런 다음이 배열을 인코딩하려면 json_encode()을 사용하고이를 레코드를 표시하는 데 사용할 자바 스크립트로 다시 전달하십시오.JSON을 Jquery와 함께 사용하는 방법?

1) 어떻게 JSON 인코딩 된 문자열을 자바 스크립트로 반환 할 수 있습니까? 2) 자바 스크립트는 행을 통과하고 입력란에 어떻게 액세스합니까?

답변

11

jQuery로 JSON을 가져 오려면 jQuery.getJSON()을 사용하십시오. 또는 다른 AJAX 도구를 사용하고 json을 eval()하여 javascript 객체를 얻을 수 있습니다.

배열을 통해 루프에, 나는 보통 jQuery.each()를 사용

var recordList = yourMethodToGetRecordListWithAjax(); 

jQuery.each(recordList, function() 
{ 
    alert(this.Name); // For example 
}); 
+0

당신의 대답에 작은 오타가있어, jquery.each는 $ .each해야한다. 그것은 좋은 작품 이외 :) –

+0

내 코드는 다음과 같습니다. $ .getJSON ("getData.php", data, myFunctionToLoopThroughResults); –

+3

$는 jQuery의 지름길입니다. each()와 같은 "정적"항목에 대해 jQuery를 작성하고 쿼리와 같은 "정적이지 않은"항목에 대해 $를 사용하여 가독성을 높일 것이라고 생각합니다. –

0

을 당신은 응용 프로그램/JSON의 콘텐츠 형식으로 반향하여 JS로 JSON 인코딩 된 문자열을 반환 할 수 있습니다.

나머지는 위의 대답을 참조하십시오. PHP 스크립트에서

3

1) :

$return["foo"] = "bar"; 
$return["blah"] = "bleg"; 
print json_encode($return); 

2) 자바 스크립트가 :

  $.ajax({ 
        type: "POST", 
        url: URL, 
        cache:false, 
        data: values, 
        dataType:'json', 
        success: function(json) 
        { 
        var foo = json.foo; 
        if (json.blah == "bleg") 
        { 
         // do stuff 
        } 

        } // end success function 
       });  // end ajax call 
관련 문제