必应地图,查找多个地理代码搜索结果(你的意思是:功能)

Bing Maps, Finding Multiple Geocode Search Results (Did you mean: Functionality)

本文关键字:搜索结果 意思是 功能 代码 地图 查找      更新时间:2023-09-26

希望一切顺利。

我使用的是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)
    }

错误:我一直在获取结果。resourceSets[I].resources[I].name未定义。

我知道它们埋在那里的一些地方,因为长度有时大于1!我是否理解result.resourceSets[0].resources.length是返回的地理编码结果的计数?

提前感谢!

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

很容易修复,当然,粗体需要更改!

// 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);
        }