2012-04-02 3 views
0

안녕하세요. JSON 객체를 통해 배열을 표시하는 데 문제가 있습니다. 배열을 반환하는 PHP에 두 개의 변수를 전달했습니다. 그런 다음 배열을 반복하고 div에 결과를 추가합니다.JSON 객체를 통해 배열을 표시하는 데 문제가 있습니다.

PHP는 JQuery를 추가하기 전에 테스트 했으므로 제대로 작동합니다. Google 크롬을 사용하여 콘솔을 검사 할 때 객체가 아니라 []로 표시되는 데이터가 덤프되었습니다. 어레이

내용물 키, I는 수신기로 다시 배열 인코딩

<li><img src="'.$image_path.'"</li> 

예컨대 화상 경로리스트 아이템의 집합을 갖고 있지

echo json_encode($result); 

JQuery 용 코드

$.post('Look_Controller.php', {look: look, account: account}, function(data) {        
    $.each(data, function(i, item) { 
     $('#carousel-ul').empty(); 
     content = item; 
     $(content).appendTo('#carousel-ul'); 
}); 
    }, "json"); 

개별 결과를 div (# carousel-ul)에 어떻게 추가합니까?,

나는 또한 내가 확실하지 않다

content = item.this; 
content = (this).item; 
content = $(this).item; 

을 시도 그 경우 때문에 CONSOLE.LOG (데이터) 디스플레이 [] 대신 객체의?

누군가가 조언 할 수 있기를 바랍니다.

감사합니다.

+0

'.each' 함수 외부에서'append/empty'를 이동하는 것이 좋습니다. –

+0

제안 된대로 각 루프를 외부로 옮겼습니다. 감사합니다. – Alan

+0

'$ ('# carousel-ul')'존재합니까? 만약 당신이 console.log ($ ('# carousel-ul')); ? –

답변

0

[]은 빈 배열입니다. 그것이 표시되고있는 경우 데이터가 없습니다.

그래서 아마 서버에서 돌아 오지 않을 것입니다. Chrome 디버거의 네트워크 탭을 확인하고 응답이 어떻게 표시되는지 확인합니다.

+0

예 테스트에서 건너편에 코드를 복사 할 때 잘못된 장소에 변수가 있습니다. 귀하의 조언을 주셔서 감사합니다 – Alan

+0

작동하지만 단 하나의 항목을 표시합니다 !! – Alan

1

시도하면 어떻게됩니까?

$.post('Look_Controller.php', {look: look, account: account}, function(data) {        
$('#carousel-ul').empty(); 
console.log(data); 
$.each(data, function(i, item) { 
    console.log(item); 
    content = item; 
    // If "carousel-ul" is a <ul> tag uncomment the next line 
    // content = $('<li/>').html(content); 
    $(content).appendTo('#carousel-ul'); 
}); 
}, "json"); 
+0

marmadrood에 대한 조언을 주셔서 감사합니다. – Alan

관련 문제