надеюсь, что все хорошо.
Я использую версию 7.0.
Этим утром я боролся с чем-то, что, на мой взгляд, должно быть довольно простым. Предоставление альтернативных результатов поиска в сценарии поиска магазинов. (Прямо как здесь - http://www.bing.com/maps)
Я отправляю запрос геокодирования в службу Bing Maps Rest следующим образом:
var geocodeRequest = "http://dev.virtualearth.net/REST/v1/Locations?query=" + encodeURI(searchString) + "&output=json&jsonp=GeocodeCallbackSearch&key=" + credentials;
Это все прекрасно работает! Я могу захватить мой результат, возвращенный в мою функцию, и анализировать его очень хорошо, если пользователь набрал запрос, который имел соответствующий геокод.
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)
}
Ошибка: я получаю result.resourceSets [i] .resources [i] .name не определено.
Я знаю, что они где-то похоронены, потому что длина иногда больше 1!
Понимаю ли я, что result.resourceSets [0] .resources.length это количество возвращаемых результатов геокодирования?
Спасибо заранее!