2012-02-09 2 views
0

코드 숨김에서 생성 된 JSON 응답을 반복 처리하려고합니다. 내 코드가 반환되는 문자열입니다 :이 사용을 반복하기 위해 노력하고있어Jquery/JSON에 문제가 발생했습니다.

[{"Symbol":"^GDAXI","Last":"6787.49","Change":"+38.73"},{"Symbol":"^FTSE","Last":"5894.65","Change":"+18.72"}] 

:

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent"> 
<script type="text/javascript" src="/Scripts/jquery-1.4.1.min.js"></script> 
<script type="text/javascript"> 
    $(document).ready(function(){ 
     $.ajax({ 
      type: "POST", 
      url: "Stocks.asmx/GetQuote", 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      success: function (stocks) { 
       $(stocks).each(function (index) { 
        $('#stocks').append("<li>" + this.Symbol + "</li>"); 
       });      
      } 
     }); 
    }); 
</script> 
</asp:Content> 
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"> 
<p> 
    <ul id="stocks"></ul> 
</p> 
</asp:Content> 

내가 갖는 모든 '정의되지 않은'과 리 항목입니다.

어디로 잘못 가고 있습니까?

+0

ASMX 서비스가 XML이 아닌 JSON을 반환하도록 정의 되었습니까? –

+0

어떤 기호를 원하십니까? 귀하의 코드에 정의 된 Symbol이 보이지 않습니다. – knub

+0

@knub JSON을 확인 하시겠습니까? – Jivings

답변

2

.each()이 옳지 않습니다.

시도 :에 통과

$(stocks).each(function (index, value) { 
    $('#stocks').append("<li>" + value.Symbol + "</li>"); 
}); 
+0

감사합니다,하지만 난 사용하도록되어있어 실현 :-) 행운 :. $ .each (주식, 기능 (주) { $ ('# 주식')를 추가 ("

  • "+ 재고. 기호 + "
  • "); }); 하지만 그 중 하나가 작동하지 않습니다 .. – alimac83

    +0

    주식 개체가 예상대로 보이는지 검사 할 수 있습니까? 'console.log (stocks)' – Jivings

    +0

    주식 가치가 전체 json 문자열 인 것처럼 보였습니다. 그걸로 뭔가 잘못되었습니다 : -S – alimac83

    0

    콜백 '는 각각'두 개의 인수를받습니다. 다음과 같이 작성해야합니다.

    $(stocks).each(function(index, data){ console.log(data.Symbol); }); 
    
    관련 문제