我需要对一堆地址进行地理编码,然后使用MapQuest将它们指向地图。我正在使用
geocodeAndAddLocations
这样做的方法。我唯一的问题是我无法弄清楚某个地址的地理编码是否失败。有谁知道如何确定?
答案 0 :(得分:0)
我没有测试过这段代码,但根据MapQuest API,它会是这样的:
map.geocodeAndAddLocations([
{street:"555 17th St", postalCode:"80202"}
], function (response) {
if (response.results.length == 0) { // FAILED!!!
alert("can't geocode location");
} else { // SUCCESS
var location;
for (j=0; j<response.results[i].locations.length; j++) {
location = response.results[i].locations[j];
alert('lat: ' + location.latLng.lat + ', lng: ' + location.latLng.lng);
}
}
});
但同样,拥有更多代码可以更好地了解您正在做什么而不做什么。
答案 1 :(得分:0)
非常简单的方式...... 在这个jquery ajax中使用以下url来进行地理编码。即使你使用mapquest 这个ajax返回json对象。
$.getJSON("http://nominatim.openstreetmap.org/reverse?format=json&lat="+lat+"&lon="+lon+"", function(data) {
var loc=data.display_name;
});
将您的lat和lng附加到url.if无法获取位置详细信息,它会抛出“无法进行地理编码”,以便您轻松解决问题。