javascript - google map autocomplete when click on button to get area -
i have tried lot same result google map search bar. using following code search bar of google map.
google.maps.event.addlistener(autocomplete, 'place_changed', function() { var place = autocomplete.getplace(); //alert(place.address_components.length); (var i=0; i<place.address_components.length; i++) { (var b=0;b<place.address_components[i].types.length;b++) { if (place.address_components[i].types[b] == "route") { var route1= place.address_components[i]; route1 = route1.long_name; undefined = true; }else if (place.address_components[i].types[b] == "sublocality") { var city1= place.address_components[i]; city1 = city1.long_name; undefined = true; }else if (place.address_components[i].types[b] == "locality") { var maincity= place.address_components[i]; maincity = maincity.long_name; undefined = true; }else if (place.address_components[i].types[b] == "administrative_area_level_1") { var state1= place.address_components[i]; state1 = state1.long_name; undefined = true; } } } }); now above working fine. when search area , click button same result autocomplete return, have tried many times declaring global variable place still not getting result.
i tried following code when user click on search button.
<div id="type-selector" class="controls" onclick="search_click('sclick');" style="z-index: 2;position: absolute;top: -3px;"> <label for="changetype-all">search</label> </div> and following function when click on search button
var get_add = document.getelementbyid("autocomplete").value; var address = get_add; geocoder = new google.maps.geocoder(); geocoder.geocode({ 'address': address }, function(results, status) { var lat=results[0].geometry.location.lat(); var lng=results[0].geometry.location.lng(); var stockholm = new google.maps.latlng(lat, lng); geocoder.geocode({'latlng': stockholm}, function(results, status) { if (status == google.maps.geocoderstatus.ok) { //console.log(results); //alert(results[1]); //alert(results[0]); if (results[1]) { (var i=0; i<results[1].address_components.length; i++) { (var b=0;b<results[1].address_components[i].types.length;b++) { if (results[1].address_components[i].types[b] == "street_address") { route1= results[1].address_components[i]; route1 = route1.long_name; } if (results[1].address_components[i].types[b] == "sublocality") { city1= results[1].address_components[i]; city1 = city1.long_name; } if (results[1].address_components[i].types[b] == "administrative_area_level_1") { state1= results[1].address_components[i]; state1 = state1.long_name; } if (results[1].address_components[i].types[b] == "country") { country= results[1].address_components[i]; country = country.long_name; } } } }else if(results[0]) { (var i=0; i<results[0].address_components.length; i++) { (var b=0;b<results[0].address_components[i].types.length;b++) { if (results[0].address_components[i].types[b] == "street_address") { route1= results[0].address_components[i]; route1 = route1.long_name; } if (results[0].address_components[i].types[b] == "sublocality") { city1= results[0].address_components[i]; city1 = city1.long_name; } if (results[0].address_components[i].types[b] == "administrative_area_level_1") { state1= results[0].address_components[i]; state1 = state1.long_name; } if (results[0].address_components[i].types[b] == "country") { country= results[0].address_components[i]; country = country.long_name; } } } } but not giving same result autocomplete return.
please me there other way or have same result both time.
Comments
Post a Comment