To solve your problem, you need to bind the correct event for input, remember that the library has its own events.
The object you use to autocomplete
autocomplete = new google.maps.places.Autocomplete($location_input.get(0), options);
Now you can bind the place_changed event that it fires when you need it, at this point you can control everything you need.
google.maps.event.addListener(autocomplete, 'place_changed', function() { var data = $("#search_form").serialize(); console.log('blah') show_submit_data(data); });
Here is a live example http://jsfiddle.net/8GnZB/7/
Jorge
source share