0

JSON で結果を返す Web サービスがあります Javascript では、これらの結果をループして、ユーザーに表示できるようにします。

次のクラスを定義しました。

Public Class PointsOfInterest
    Public Property hotspots() As List(Of Hotspot)
        Get
            Return m_hotspots
        End Get
        Set(value As List(Of Hotspot))
            m_hotspots = value
        End Set
    End Property
    Private m_hotspots As List(Of Hotspot)
    Public Property errorString() As String
        Get
            Return m_errorString
        End Get
        Set(value As String)
            m_errorString = value
        End Set
    End Property
    Private m_errorString As String
    Public Property errorCode() As Integer
        Get
            Return m_errorCode
        End Get
        Set(value As Integer)
            m_errorCode = value
        End Set
    End Property
    Private m_errorCode As Integer
End Class

Public Class Hotspot
    Private m_id As String
    Public Property id() As String
        Get
            Return m_id
        End Get
        Set(value As String)
            m_id = value
        End Set
    End Property

    Public Property anchor() As anchor
        Get
            Return m_anchor
        End Get
        Set(value As anchor)
            m_anchor = value
        End Set
    End Property
    Private m_anchor As anchor


    Public Property text() As textprop
        Get
            Return _text
        End Get
        Set(value As textprop)
            _text = value
        End Set
    End Property
    Private _text As textprop


    Public Property imageURL() As String
        Get
            Return _imageURL
        End Get
        Set(value As String)
            _imageURL = value
        End Set
    End Property
    Private _imageURL As String

    Public Property actions() As List(Of action)
        Get
            Return _actions
        End Get
        Set(value As List(Of action))
            _actions = value
        End Set
    End Property
    Private _actions As List(Of action)

End Class

Public Class anchor
    Public Property geolocation() As geoloc
        Get
            Return _geoloc
        End Get
        Set(value As geoloc)
            _geoloc = value
        End Set
    End Property
    Private _geoloc As geoloc

End Class

Public Class textprop
    Public Property title() As String
        Get
            Return _title
        End Get
        Set(value As String)
            _title = value
        End Set
    End Property
    Private _title As String
    Public Property description() As String
        Get
            Return _description
        End Get
        Set(value As String)
            _description = value
        End Set
    End Property
    Private _description As String
    Public Property footnote() As String
        Get
            Return _footnote
        End Get
        Set(value As String)
            _footnote = value
        End Set
    End Property
    Private _footnote As String

End Class


Public Class geoloc
    Public Property lat() As String
        Get
            Return _lat
        End Get
        Set(value As String)
            _lat = value
        End Set
    End Property
    Private _lat As String
    Public Property lon() As String
        Get
            Return _lon
        End Get
        Set(value As String)
            _lon = value
        End Set
    End Property
    Private _lon As String
End Class

Public Class action
    Public Property uri() As String
        Get
            Return _uri
        End Get
        Set(value As String)
            _uri = value
        End Set
    End Property
    Private _uri As String

    Public Property label() As String
        Get
            Return _label
        End Get
        Set(value As String)
            _label = value
        End Set
    End Property
    Private _label As String
    Public Property contentType() As String
        Get
            Return _contentType
        End Get
        Set(value As String)
            _contentType = value
        End Set
    End Property
    Private _contentType As String
    Public Property method() As String
        Get
            Return _method
        End Get
        Set(value As String)
            _method = value
        End Set
    End Property
    Private _method As String
    Public Property activityType() As Integer
        Get
            Return _activityType
        End Get
        Set(value As Integer)
            _activityType = value
        End Set
    End Property
    Private _activityType As Integer
    Public Property showActivity() As Boolean
        Get
            Return _showActivity
        End Get
        Set(value As Boolean)
            _showActivity = value
        End Set
    End Property
    Private _showActivity As Boolean
    Public Property activityMessage() As String
        Get
            Return _activityMessage
        End Get
        Set(value As String)
            _activityMessage = value
        End Set
    End Property
    Private _activityMessage As String

End Class   

これらを JSON の Web サービス経由で返します。 0&hasvideo=0&minrating=0&lang=nl

たとえば、3 番目の結果 (この場合は 0348551532) の tel プロパティを読みたい場合、どうすればよいでしょうか? 式を使用して選択を行うことができる XSLT のようなものですか?

4

1 に答える 1

1

JavaScript では、AJAX をサポートする jQuery や ExtJS などを使用していると想定しています。クライアント側で JSON を取得したら、Web サービスの結果をデコードします (特別なツールキットを使用せずに JSON を読み取る場合は、Ext.decode または eval("") を使用します)。

JSON をデコードしたら、JavaScript ですぐに利用できます。

例:

var json = [Function that decodes JSON text];
var uriInfo = json.hotspots[2].actions[1].uri;

FireFox を使用している場合は、FireBug というアドオンをインストールできます。これにより、この種のことを処理できます。そのツールを使用すると、console.dir(json); を呼び出すことができます。JavaScriptで、javascriptなどで見られるように全体の構造を見る.

于 2012-05-30T22:55:15.193 に答える