Ниже приведен мой обратный код геокодирования:
google.maps.event.addListener(marker, 'drag', function() {
geocoder.geocode({'latLng': marker.getPosition()}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
if (results[0]) {
$.each(results[0].address_components, function(i,v) {
if (v.types[0] == 'postal_code') {
$('#zip').val(v.long_name);
}
if (v.types[0] == 'locality') {
$('#city').val(v.long_name);
}
if (v.types[0] == 'administrative_area_level_1' || v.types[0] == 'administrative_area_level_2') {
$('#state').val(v.long_name);
}
if (v.types[0] == 'country') {
$('#country').val(v.long_name);
}
});
$('#address').val(results[0].formatted_address);
$('#lat').val(marker.getPosition().lat());
$('#lng').val(marker.getPosition().lng());
} else {
alert("No results found. Please revise your address or adjust your marker.");
}
});
});
Сначала, когда результат для City
равен AAA
, затем input[type=text]#city
будет AAA
.Когда я снова переворачиваю геокод, адрес возврата не содержит city
.Вместо очистки предыдущих значений в текстовом поле ввода остается AAA
.
Есть ли способ очистить поле, если результаты не возвращены?
Спасибо.