Usé la API de Google Maps para obtener el nombre de la ciudad, el estado y el país usando el código postal de mi sitio. Google Address Autocompletar funciona bien. Pero no necesito el autocompletar. Solo doy el código postal y hago clic en el botón, y proporciona la dirección.
Enfrenté el problema es TypeError: no se pueden leer las propiedades de undefined (leyendo 'activeElement')
mi codigo es muy simple
<input type = "text" id="deliverTo" name="deliverTo" value = ""/> <input type ="button" value ="Get Address" name ="Submit" onclick = "getcoastalzip()" /> <input type = "text" id = "ship_city" name ="ship_city" Placeholder="City" /> <input type = "text" id = "ship_state" name ="ship_state" Placeholder="State" /> <input type = "text" id = "ship_country" name ="ship_country" Placeholder="Country" /> <input type = "text" id = "ship_postal_code" name ="ship_postal_code" Placeholder="Postal Code" /> <script src="https://maps.google.com/maps/api/js?key=APIKEY=places" type="text/javascript"></script> <script> function getcoastalzip() { var input = document.getElementById('deliverTo').value; alert(input); var autocomplete = new google.maps.places.Autocomplete(input); console.log(autocomplete); autocomplete.addListener('place_changed', function() { var place = autocomplete.getPlace(); console.log(place); console.log(place['address_components'][0]['long_name']); console.log(place['address_components'][1]['long_name']); document.getElementById('ship_city').value = place['address_components'][1]['long_name']; document.getElementById('ship_state').value = place['address_components'][2]['long_name']; document.getElementById('ship_postal_code').value = place['address_components'][0]['long_name']; document.getElementById('ship_country').value = place['address_components'][3]['long_name']; }); } </script>