Итак, у меня есть рабочий (почти) геокодер построил, который принимает в качестве адреса или широчайшие комбинации/Lon, и предлагает результаты смотрите здесь:Geocoder возвращение ZERO_RESULT и QUERY_LIMIT_REACHED
$(this).autocomplete({
source:function (request, response) {
if (geocoder == null) {
geocoder = new google.maps.Geocoder();
}
geocoder.geocode({'address':request.term }, function (results, status) {
if (status == google.maps.GeocoderStatus.OK) {
var searchLoc = results[0].geometry.location;
var lat = results[0].geometry.location.lat();
var lng = results[0].geometry.location.lng();
var latlng = new google.maps.LatLng(lat, lng);
var bounds = results[0].geometry.bounds;
geocoder.geocode({'latLng':latlng}, function (results1, status1) {
if (status1 == google.maps.GeocoderStatus.OK) {
if (results1[1]) {
response($.map(results1, function (loc) {
return {
label:loc.formatted_address,
lat:lat,
lng:lng,
value:loc.formatted_address,
bounds:loc.geometry.bounds
}
}));
}
}
});
}
});
},
и 90% от время, когда оно работает с разбивкой. Однако теперь я замечаю, что иногда первый элемент, который он возвращает во всплывающем списке, не доступен для кликов. Я установил журналы для переменной status
и заметил, что иногда это ZERO_RESULT
или QUERY_LIMIT_REACHED
. В обоих этих случаях список загружается со значениями, и все в списке выбирается, кроме первого. Любые идеи для возможных решений?