2012-03-27 9 views
0

hoffe, alles ist gut.Bing Maps, Suche nach mehreren Geocode-Suchergebnissen (meinten Sie: Funktionalität)

Ich verwende Version 7.0.

Heute morgen hatte ich Probleme mit etwas, von dem ich dachte, dass es ziemlich einfach sein sollte. Bereitstellung alternativer Suchergebnisse in einem Store Locator-Szenario. (Genau wie hier - http://www.bing.com/maps)

mache ich eine geocode Anfrage Bing Maps Erholung Service wie folgt:

Das alles funktioniert super! Ich kann mein in meine Funktion zurückgegebenes Ergebnis erfassen und es gut analysieren, solange der Benutzer eine Abfrage eingegeben hat, die über einen passenden Geocode verfügt.

function GeocodeCallbackSearch(result) { 
    try 
    { 
     alert(result.resourceSets[0].resources.length); 
     // When the user searches an address that isn't quite right, I notice that the 
     // Length of the result set is greater then 1. 
     // I would like to get at these so I can provide the "Did you Know" 
     // functionality. 

     // This is where I am having problems accessing the other results 
     for (var i =0; i < result.resourceSets[0].resources.length;i++) 
     { 
      alert (result.resourceSets[i].resources[i].name); 
     } 
    } 
    catch(err){ 
     alert(err.message) 
    } 

Fehler: Ich bekomme ständig result.resourceSets [i] resources [i] .name nicht definiert ist.

Ich weiß, dass sie in dort einige vergraben sind, weil die Länge manchmal größer als 1 ist! Bin ich der Meinung, dass result.resourceSets [0] .resources.length die Anzahl der zurückgegebenen Geocode-Ergebnisse ist?

Vielen Dank im Voraus!

Antwort

0
for (var i =0; i < result.resourceSets[0].resources.length;i++) 
{ 
    alert (result.**resourceSets[i]**.resources[i].name); 
} 

Einfach zu reparieren, die bolded musste geändert werden, natürlich!

// This is where I am having problems accessing the other results 
     for (var i =0; i < result.resourceSets[0].resources.length;i++) 
     { 
      alert (result**.resourceSets[0]**.resources[i].name); 
     }