I have the following javascript code which does google map autocomplete on different input textboxes that are parts of an address.
function startAutoComplete() {
var address = document.getElementById("addressId");
var city = document.getElementById("cityId");
var state = document.getElementById("stateId");
var zip = document.getElementById("zipId");
//option for autocomplete
var option = {types: ['geocode'], componentRestrictions: {country: 'us'}};
//autocomplete for address textbox
autocomplete = new google.maps.places.Autocomplete(address, option);
google.maps.event.addListener(autocomplete, 'place_changed', function() {
var place = autocomplete.getPlace();
//parses the result object and populates the other textboxes accordingly
for(i=0; i<place.address_components.length; i++)
{
if(place.address_components[i].types[0] == 'locality')
city.value = place.address_components[i].long_name;
if(place.address_components[i].types[0] == 'administrative_area_level_1')
state.value = place.address_components[i].short_name;
if(place.address_components[i].types[0] == 'postal_code')
zip.value = place.address_components[i].long_name;
}
/* Here is the PROBLEM */
address.value = place.name;
});
However when I try and update the textbox that is being auto completed with a shortened version of the full address (so here just the street number and street name). The value in the full address textbox doesn't change. I've tried using jquery and setting the value attribute with setAttribute() on the textbox. What am I doing wrong?