あなたは場所を選択した後、入力の値を上書きすることによって、これを解決することができます。
var input = document.getElementById("address");
var autocomplete = new google.maps.places.Autocomplete(input, {types: ["geocode"]});
autocomplete.addListener("place_changed", function() {
var placeResult = autocomplete.getPlace();
var addressComponents = placeResult.address_components;
var street = "";
var number = "";
// loop through addressComponents and find the route and street_number types
for (var i = 0, i_len = addressComponents.length; i < i_len; i++) {
var addressType = addressComponents[i].types[0];
switch(addressType) {
case "route":
street = addressComponents[i]["long_name"];
break;
case "street_number":
number = addressComponents[i]["long_name"];
break;
}
}
input.value = number + " " + street;
});
私は最近、容易にこれを可能にするjQuery pluginを作成しました。
$("#address").geocomplete({
fields: {
"#address" : "street address"
}
});
プラグインを使用すると、選択した場所の結果に基づいて任意の数のフィールドを自動入力できます。それはまた、カスタムスタイルを追加し、コールバックを提供し、厄介なscrolling issueを修正します。
street、street number、state、countryをよく知っていますか? –
google.maps.places.Autocompleteクラスでは許可されません。フォーマットを変更することはできません。カスタムフォーマットが必要な場合は、google.maps.places.AutocompleteServiceクラスに基づいて独自のオートコンプリートを実装する必要があります。 https://developers.google.com/maps/documentation/javascript/reference#AutocompleteServiceのドキュメントをご覧ください。 – xomena