因此,我搜索了大多数 getJSON 问题,但仍然无法找到解决问题的方法。我的主要问题是:我有一个对 .aspx 页面进行 $.getJSON 调用的 .js 文件。.aspx 页面返回一个 json 对象。我已经用 demo.js 测试了 $.getJSON,它工作得很好;我能够引用 json 字段。.aspx 页面不是这种情况。这是我的代码:
.js 进行 $getJSON 调用
$.getJSON('updateSlides.aspx', function (json) {
alert("JSON Data: " + json.url);
});
.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
我在 VB 中放置了一个 msgbox,并从我的本地机器上运行它来查看我的值。它以 json 形式返回 ws 属性设置,该设置在 jsonlint.com 上正确验证。
我也尝试过使用带有 async: false 的 $.ajax 调用,但它不起作用。当我使用有效的 demo.js 时,我在 firebug 中看到了 json 字段;updateSlides.aspx 不是这种情况。
在此先感谢,布赖恩