2017-01-15 6 views
-1

"Transport for London"統一APIのAPI呼び出しを作成しました。私のコードは正常に動作し、正常に私のHTML文書内のデータを表示しています。しかし、返すJSON内の特定の変数にアクセスするのには苦労しています。APIを使用して返されたJSONデータから特定の値を参照する

私がアクセスしたい変数Iの値は "StatusSeverityDescription"です。

以下

は私のAjax呼び出しから成功の機能で、この作品に注意してください。

success: function(data){ 
        $.each(data, function(key,value) { 
         var line = value.name; 

         //append list item to div with id of Data 
         $("#Data").append("<li>"+line+"</li>"+"<br>"); 
         }); 

JSONを返しました:

{ 
"$type": "Tfl.Api.Presentation.Entities.Line, Tfl.Api.Presentation.Entities", 
"id": "bakerloo", 
"name": "Bakerloo", 
"modeName": "tube", 
"disruptions": [ 

], 
"created": "2017-01-10T17:28:11.04Z", 
"modified": "2017-01-10T17:28:11.04Z", 
"lineStatuses": [ 
    { 
    "$type": "Tfl.Api.Presentation.Entities.LineStatus, Tfl.Api.Presentation.Entities", 
    "id": 0, 
    "statusSeverity": 10, 
    "statusSeverityDescription": "Good Service", 
    "created": "0001-01-01T00:00:00", 
    "validityPeriods": [ 

    ] 
    } 
], 
"routeSections": [ 

], 
"serviceTypes": [ 
    { 
    "$type": "Tfl.Api.Presentation.Entities.LineServiceTypeInfo, Tfl.Api.Presentation.Entities", 
    "name": "Regular", 
    "uri": "/Line/Route?ids=Bakerloo&serviceTypes=Regular" 
    } 
] 

}、

+0

は正確にあなたが立ち往生していますか?レスポンスオブジェクトのプロパティにアクセスしようとしましたか?配列のインデックスに登録する? – jonrsharpe

+0

何を試しましたか?あなたはJSでオブジェクト/配列を使う方法について何かを読んだことがありますか?基本的なチュートリアルでこれを説明します。 – jonrsharpe

+0

こんにちはジョン、はい私はこの主題を読んだり研究しました。この場合、返されたJSON内の配列の1つを特定できませんでした。簡単な解決策になりました。var status = value.lineStatuses [0] .statusSeverityDescription; –

答えて

0

lineStatusesdata内部の配列です。あなたは、その最初の要素に興味がある:

data.lineStatuses[0].statusSeverityDescription 

より一般的には:

for (var index in data.lineStatuses) { 
    //Do something with data.lineStatuses[index].statusSeverityDescription 
} 
+0

Lajosさん、ありがとう、これは私が必要としていたものです。 –

+0

ようこそ。 –

関連する問題