2012-06-09 2 views
0

내 질문에 간단합니다 문자열과 숫자가 표시되지만 숫자 만 표시 어떻게 표시 할 수 있습니까?Jquery ajax html 대체

 $.ajax({ 
      type: "POST", 
      url: "data.php", 
      data: "act="+nr, 
      success: function (result) { 

       var arr = JSON.parse(result); 

       if ($.isArray(arr) == true) { 
        $.each(arr, function (i, n) { 
         $('#s_main #s_info').html("<p>+" + n + "</p>") 
        }); 

       } 

      } 
     }) 
    }); //ends here 

내 PHP : 내가 대신 결과가 정확하지만 이전 데이터에하지 스택 삭제됩니다 HTML의 추가 사용하는 방식으로

$act = $_POST['act']; 

$output =array(); 
$act2 = "TXT!!!"; 
array_push($output,$act); 

echo json_encode($output); 

+0

문자열과 숫자를 "받는 방법"을 정확히 표시하지 않았습니다. 결과 JSON은 정확히 무엇입니까? 그것을 모른 채, 도움을 받기가 꽤 어렵습니다. – Pointy

+0

console.log (n)을 사용하면 예상 한 결과가 나타 납니까? – Cristy

+0

JSON 결과 구조를 게시 할 수 있습니까? - [estevao_lucas] (http://stackoverflow.com/users/1394414/estevao-lucas) via – Lix

답변

0

반환 값은 JSON 개체입니다.

if ($.isArray(arr) == true) 

개체가 배열이 아니기 때문에이 줄은 true를 반환하지 않아야합니다. JSON.parse()이 작동하지 않으면 false와 같은 값을 반환합니다. 따라서 반환 된 객체를 테스트하여 성공했는지 확인할 수 있습니다.

var jsonObj = JSON.parse(result); 

if (jsonObj) { 
    $.each(jsonObj, function (index, value) { 
    $('#s_main #s_info').html("<p>+" + value + "</p>") 
    }); 
}