如何访问json调用返回的数组

时间:2015-05-27 21:13:02

标签: javascript c# arrays dictionary

如何使用javascript从下面的对象访问类型为array的typeMatch。

以下是我正在尝试并且能够访问消息而不是typeMatch

的内容
$.getJSON(uriGetTypeMatch)
    .done(function (data) {
        document.getElementById('MessageBox').innerHTML = data.message;
    });

返回对象

    Sample:
{
  "typeMatch": {
    "sample string 1": 2,
    "sample string 3": 4
  },
  "message": "sample string 2"  
}

感谢任何帮助。

感谢。

1 个答案:

答案 0 :(得分:0)

我希望这会对你有所帮助。

在您的主表单上,将其放在顶部:

Imports Newtonsoft.Json

您可以从此处下载此dll并将其添加到参考文献中: https://www.nuget.org/packages/newtonsoft.json/

然后在Json中创建包含所有对象的简单类,将其粘贴到主窗体上:

#Region " - Classes - "
Public Class JSON_result
    Public typeMatch As String
    Public sample_string_1 As String
    Public sample_string_3 As String
    Public message As String
End Class
#End Region

您可以添加更多对象,具体取决于您的Json。

从Json Link获取数据使用:

  Private Sub GetJsonData()
    Try
        Dim wc As WebClient = New WebClient
        Dim jsonlink As String = "http://yourJsonlink.com/data.txt"
        Dim jsondata As String
        jsondata = wc.DownloadString(jsonlink)
        TextBox1.Text = jsondata.ToString
    Catch ex As Exception
    End Try
  End Sub

之后,最后一个是加载并将数据和值显示到文本框中:

    Private Sub LoadDataToTextBoxes()
    Try
        Dim obj As JSON_result
        obj = JsonConvert.DeserializeObject(Of JSON_result)(Me.TexTbox1.Text)

        typeMatchTXT = obj.typeMatch
        sample_string_1TXT = obj.sample_string_1
        sample_string_3TXT = obj.sample_string_3
        messageTXT = obj.message
    Catch ex As Exception
    End Try
   End Sub

您可以在主应用上制作TextBox1.Visible = False,以隐藏Json 从链接加载数据。