Ich habe unten API Link für Google-Karte hinzugefügt:Warum die von Google generierte.maps.places.Autocomplete Suchadresse ZERO_RESULT während Geocodierung gibt?
<script type="text/javascript" src="http://maps.google.com/maps/api/js?Place=true&libraries=places"></script>
Auf Fenster Lastereigniskarte Lasten mit Standard lat und lange angegebenen Werte schwer in loadShowMap()
codiert. Und haben auch Register Textfeld für AutoComplete
.
google.maps.event.addDomListener(window, 'load', loadShowMap);
function loadShowMap() {
var input = document.getElementById('txtSearch');
var autocomplete = new google.maps.places.Autocomplete(input);
var latlng = new google.maps.LatLng(41.4925374, -99.9018);
var myOptions = {
zoom: 11,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
geocoder = new google.maps.Geocoder();
mapgoogle = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
NewMapLoad(mapgoogle, geocoder, '');
$('#btnMapSearch').click(function() {
geocoder = new google.maps.Geocoder();
var address = $('#txtSearch').val();
deleteOverlays();
if (address != '') {
NewMapLoad(mapgoogle, geocoder, $('#txtSearch').val());
}
else { alert('Please enter a Location to Search'); }
});
}
Per Auto-Vervollständigen-Funktion bietet es die Anpassungsadresse wie im folgenden Bildschirm:
Dann wähle ich "Marketfair Mall, Skibo Road, Fayetteville, NC, USA". Dann auf die Suchschaltfläche klick unter Funktion wird aufgerufen. Das setzt den ersten Marker und den, den wir gerade suchen.
function NewMapLoad(Nmapgoogle, geocoder, searchplace) {
var strAddr = "Hollywood, LA"
var strPopupDiv = "<table cellPadding='0' cellSpacing='0' style='width:100%;'> <tr><td>" + "Initial Point" + "</td></tr></table> ";
var strSearchDiv = "<table cellPadding='0' cellSpacing='0' style='width:100%;'> <tr><td>" + "Search Point" + "</td></tr></table> ";
var PointColor = "RED";
var OrglatLon = document.getElementById('hdnactlocation');
var Orglat = "", OrgLon = "";
if (OrglatLon != null && OrglatLon.value.split('|').length > 1) {
Orglat = OrglatLon.value.split('|')[0];
OrgLon = OrglatLon.value.split('|')[1];
}
else if (OrglatLon != null && OrglatLon.value.trim() != "") {
strAddr = OrglatLon.value;
}
AddMappointsNew(Orglat, OrgLon, strPopupDiv, geocoder, mapgoogle, PointColor, strAddr, "Initial Point");
if (searchplace != '' && searchplace.toLowerCase() != 'clone') {
AddMappointsNew('', '', strSearchDiv, geocoder, mapgoogle, "GREEN", searchplace, "Search Point");
}
if (searchplace.toLowerCase() == 'clone') {
AddMappointsNew(orglat, orglon, strSearchDiv, geocoder, mapgoogle, "GREEN", strAddr, "Search Point");
}
overlay = new google.maps.OverlayView();
overlay.draw = function() { };
overlay.setMap(mapgoogle);
}
für diese Einstellung Anfangs- und die Suche Marker über Karte unten Funktion aufgerufen wird:
function AddMappointsNew(lat, lon, strpopup, geocoder, mapgoogle, pointcolor, address, title) {
var point;
var iconlnk = "http://maps.google.com/mapfiles/ms/icons/red-dot.png";
if (pointcolor != "" && pointcolor == "GREEN") {
iconlnk = "http://maps.google.com/mapfiles/ms/icons/green-dot.png";
}
geocoder = new google.maps.Geocoder();
var addressdiv = $('<div/>').html(strpopup).html();
geocoder.geocode({ 'address': address }, function (results, status) {
if (status == google.maps.GeocoderStatus.OK) {
mapgoogle.setCenter(results[0].geometry.location);
var marker = new google.maps.Marker({
map: mapgoogle,
icon: iconlnk,
position: results[0].geometry.location,
title: title
});
var infowindow = new google.maps.InfoWindow({
content: addressdiv,
maxWidth: 300,
maxHeight: 200
});
google.maps.event.addListener(marker, 'click', function() {
infowindow.open(mapgoogle, marker);
});
if (pointcolor != "" && pointcolor == "GREEN") {
setSearchmarker(marker);
}
markersArray.push(marker);
} else {
mapgoogle.setZoom(5);
alert("Geocode was not successful for the following reason: " + status);
}
});
}
aber nur erste Markerkarte über und für die Geocodierung Adresse zurück von Auto-Vervollständigen-Funktion gibt einen Fehler "gesetzt zu werden ZERO_RESULT ".
Wahrscheinlich versuchen sollten, weil das nicht eine Adresse ist, ist es ein Ort. Bitte geben Sie eine [mcve], die Ihr Problem zeigt, mit dem gebuchten Code, bekomme ich einen Javascript-Fehler: 'Uncaught ReferenceError: deleteOverlays ist nicht definiert ' – geocodezip