2012-08-07 4 views
0

저는 현재 jax 피드를 사용하고 있습니다. 저는 현재 아약스를 사용하여 데이터를 목록 형식으로 표시하려고합니다. 나는이 포럼에서 많은 것을 배워야하기 전에 json 피드를 사용한 적이 없다.Json이 정의되지 않은 이유가 확실하지 않습니다.

현재 데이터가 정의되지 않은 이유가 확실하지 않습니다. 이제는 json 피드가 도메인 전체에 걸쳐 있다는 것을 알고 있으므로 jsonp와 url 중 하나가 아닌 콜백 함수가 필요합니다.

<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>JSONP test</title> 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script> 
</head> 

<body> 
<div id="content"></div> 
<script type="text/javascript"> 
function loadgatewayJSON() { 

$.ajaxSetup({ 
     global : true, 
     dataType: 'jsonp', 
     jsonp : 'callback', 
     cache : true, 
     data: {eventTypeId:1}, 
     ajaxStart: function(){ 
      //$('#content').hasClass('loading'); 
     }, 
     complete: function(){ 
      //$('#content').removeClass('loading'); 
     } 
     }); 

    $.ajax({ 

     url: '(my url for feed)', 
        success: function(data, status) { 
         $('#content').empty(); 
         var numResults = data.length; 
         alert(data); 
         for (var i=0;i < numResults;i++) {        
          $('#content').append("<p>"+data[0].eventCount+"</p>"); 

         }; 

        }, 
        error:function (xhr, ajaxOptions, thrownError){ 
        alert("An error has occured"); 
        alert(xhr.status); 
        alert(xhr.responseText); 
       } 
     }); 
}; 
loadgatewayJSON(); 
</script> 
<div id="content"></div> 
</body> 
</html> 

왜 코드가 정의되지 않은 이유 때문에 코드에서 오류를 발견 할 수 있는지 궁금합니다. 나는 단지 사건 목록을 원한다. 여기있는 누군가가 나를 도울 수 있기를 바랍니다.

업데이트 :

내가 피드 지금 당겨하지만 JSON 피드에서 데이터를 끌어 어려움을 겪고 있어요.

$('#content').empty(); 
var data = name.event; 

alert(data); 
for (var i=0;i < numResults;i++) {        
$('#content').append('+data[0].events+'); 

안타깝게도이 모든 끌어 :

내가 끌어해야 할 것들 나는 그것이 가정

"이름" "STARTDATE" "ENDDATE" "EVENTTYPE"

입니다 + 데이터 [0]. 이벤트 +로드 시간 표시

업데이트 :

슬프게도이 문제를 해결해 주셔서 감사합니다. 아무 것도 표시되지 않는 것 같아서 사용하고있는 문구라고 가정합니다.

"status": "success", 
     "eventCount": 681, 
     "events": [ 
      { 

"baseUrl":     
"pageUrl":         
"name":     
"owner":   
"startDate":     
"startTime":     
"endDate":     
"endTime": 

이 피드 ID는하고 정보가 야호 때문에 고정이 문제에서이 코드

success: function(data, status) { 
        $('#content').empty(); 
        var data = data.name; 
        alert(data); 
        for (var i=0;i < data;i++) {         
         $('#content').append(data[0].events); 

        }; 

아니라 1을 사용하여 뽑아 될 수있다. 오늘은 적어도 낭비가 아니 었습니다. 뿐만 아니라 당신의 도움을 주셔서 너무 감사드립니다 :)

+0

귀하의 URL은 무엇을 제공합니까? JSONP 또는 JSONP – Ingemar

+0

JSONP 출력은 내가 생각하기에 –

답변

0

무슨 짓을 한 것은 잘못이다, $('#content').append('+data[0].events+');

당신은 $('#content').append(data[0].events);

'+data[0].events+' 문자열로 처리되고 출력이 예상대로 수행해야

.

+0

고맙습니다. 슬프게도 여전히 데이터를 가져 오지는 않지만 피드에 whats에 대해 더 많이 설명하기 위해 jsonp 피드를 표시해야한다고 생각합니다. –

관련 문제