2011-08-30 2 views
0

GoogleMapsから返された応答オブジェクトからstart_addressにアクセスしようとしています。googlemapsから返される解析応答

を試みた:あなたがプロ何に基づいて

directionsDisplay = new google.maps.DirectionsRenderer(); 
directionsDisplay.setMap($gmap); 
directionsDisplay.setPanel(document.getElementById(directionHtml)); 
directionsService.route(request, function(response, status){ 
    if(status == google.maps.DirectionsStatus.OK){ 
      directionsDisplay.setDirections(response); 
      alert(response['routes']['legs']['start_address']); 
    } 
}); 

response.toSource()

({routes:[ 
    {bounds:{ba:{b:53.51456, d:53.529900000000005}, V:{d:-1.1919300000000002, b:-1.1283400000000001}}, 
    copyrights:"Map data \xA92011 Tele Atlas", 
    legs:[ 
     {distance:{text:"5.9 km", value:5910}, 
     duration:{text:"11 mins", value:688}, 
     end_address:"18 Spring Lane, Sprotbrough, Doncaster DN5 7, UK", 
     end_location:{Pa:53.51555, Qa:-1.1919299999999566}, 
     start_address:"42 High St, Doncaster DN1 1, UK", start_location:{Pa:53.52307, Qa:-1.1337300000000141}, steps:[ 
ETC... 

答えて

1

response['start_address'] 
response['routes']['start_address'] 
response['routes']['legs']['start_address'] 

Googleマップを

// for testing purposes I assume to have the actual response 
// assigned to a response var 
var response = { 
routes:[{ 
     bounds:{ba:{b:53.51456, d:53.529900000000005}, V:{d:-1.1919300000000002, b:-1.1283400000000001}}, 
     copyrights:"Map data \xA92011 Tele Atlas", 
     legs:[{ 
       distance:{text:"5.9 km", value:5910}, 
       duration:{text:"11 mins", value:688}, 
       end_address:"18 Spring Lane, Sprotbrough, Doncaster DN5 7, UK", 
       end_location:{Pa:53.51555, Qa:-1.1919299999999566}, 
       start_address:"42 High St, Doncaster DN1 1, UK", start_location:{Pa:53.52307, Qa:-1.1337300000000141} 
      }] 
    }] 
}; 

そして、あなたはresponse.routes[0].legs[0].start_addressをすれば、それは42 High St, Doncaster DN1 1, UKを返します。私は、応答(もちろん完全ではない)のこのような構造を考え出すことができるvided。 routesプロパティは配列なので、インデックスから別の値を取得するために反復処理が必要な場合があります。その場合は反復処理を行い、0をイテレータ変数に置き換えてください。

+0

あなたの伝説は、大変ありがとうございました。 –

関連する問題