var lmtext = '
'; var placeSearch, autocomplete; function lmauto() { // Create the autocomplete object, restricting the search // to geographical location types. autocomplete = new google.maps.places.Autocomplete( /** @type {HTMLInputElement} */(document.getElementById('geocomplete')), { types: ['geocode'] }); // When the user selects an address from the dropdown, // populate the address fields in the form. google.maps.event.addListener(autocomplete, 'place_changed', function() { fillInAddress(); }); } function fillInAddress() { // Get the place details from the autocomplete object. var place = autocomplete.getPlace(); var address_components = place.address_components; var components={}; jQuery.each(address_components, function(k,v1) {jQuery.each(v1.types, function(k2, v2){components[v2]=v1.long_name});}) console.log(components); document.getElementById('lat').value = place.geometry.location.lat(); document.getElementById('long').value = place.geometry.location.lng(); document.getElementById('full').value = place.formatted_address; document.getElementById('postal_code').value = components.postal_code; document.getElementById('route').value = components.route; document.getElementById('street').value = components.street_number; document.getElementById('locality').value = components.locality; document.getElementById('administrative_area_level_1').value = components.administrative_area_level_1; } // Bias the autocomplete object to the user's geographical location, // as supplied by the browser's 'navigator.geolocation' object. function geolocate() { if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(function(position) { var geolocation = new google.maps.LatLng( position.coords.latitude, position.coords.longitude); var circle = new google.maps.Circle({ center: geolocation, radius: position.coords.accuracy }); autocomplete.setBounds(circle.getBounds()); }); } } function lminitialize() { $("#lmdiv").html(lmtext); lmauto(); } function loadScriptLM() { if (window.jQuery === undefined || window.jQuery.fn.jquery !== '2.1.1') { var script_tag = document.createElement('script'); script_tag.setAttribute("type","text/javascript"); script_tag.setAttribute("src", "http://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"); // Try to find the head, otherwise default to the documentElement (document.getElementsByTagName("head")[0] || document.documentElement).appendChild(script_tag); } var script = document.createElement('script'); script.type = 'text/javascript'; script.src = 'https://maps.googleapis.com/maps/api/js?key=AIzaSyAM3GMrM7oc-vRQPf1gwOk4a5G69KOm95g&v=3.exp&' + 'libraries=places&'+'callback=lminitialize'; document.body.appendChild(script); } window.onload = loadScriptLM;