2012-05-09 7 views
0

私はgetJSONの質問の大半を検索し、私の問題の解決策を見つけることができません。私の主な問題は次のとおりです。.jsファイルで.aspxページへの.getJSON呼び出しを行います。 .aspxページはjsonオブジェクトを返します。私は$ .getJSONをdemo.jsでテストしましたが、うまく動作します。私はjsonフィールドを参照することができます。これは、.aspxページのケースではありません。ここに私のコードは次のとおりです。JSON OBJ

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 
    Dim jsonString As String 
    If Not Page.IsPostBack Then 
     Dim ws As New wallboardSettings 
     ' pull data values from db here, replace hardcoded values below 
     ws.duration = 5 
     ws.imagePath = "Images\slide1.jpg" 
     ws.url = "slide1.html" 
     Dim js As JavaScriptSerializer = New JavaScriptSerializer() 
     jsonString = js.Serialize(ws) 
     Response.Write(jsonString) 
    End If 
End Sub 

を返す$ getJSON呼び出しを行う

の.js

$.getJSON('updateSlides.aspx', function (json) { 
    alert("JSON Data: " + json.url); 
}); 

.aspxの私はVBでのMsgBoxを配置し、私の地元からそれを走ってきました私の価値観を見てください。 jsonlint.comで正しく検証されたjson形式のwsプロパティ設定を返します。

async:falseを指定して$ .ajax呼び出しを使用してみましたが、動作しません。私が使用しているdemo.jsを使うと、jsonフィールドが火かき棒に表示されます。これは、updateSlides.aspxの場合には当てはまりません。事前に

おかげで、 ブライアン

+0

aspxを直接呼び出そうとしましたか? – Guidhouse

答えて

0

だから、jsonは問題ではないことが判明しました。 aspxのページは戻ってjsonちょうどいいです。 firebugによると、同じaspxページも自動生成された追加HTMLを返していました。私はこのhtmlを削除し、火かき棒はjsonデータを示しました。あなたのご回答ありがとう!

0

あなたの応答からアプリケーション/ JSONにコンテンツタイプヘッダを設定します。

関連する問題