2012-02-09 3 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> 

私は取得していますすべては「未定義」とのliアイテムです。

どこが間違っていますか?

+0

ASMXサービスは、JSONではなくXMLを返すように定義されていますか? –

+0

あなたはどんなシンボルをしたいですか?私はあなたのコードで定義されたシンボルが表示されません。 – 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

    'はそれぞれ' は2つの引数を受け取るに渡されるコールバック。

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