당신이있는 곳을 선택한 후 입력 값을 덮어 써서이 문제를 해결 할 수있다.
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을 수정합니다.
거리, 거리 번호, 주, 국가를 알 수 있습니까? –
google.maps.places.Autocomplete 클래스는 허용하지 않습니다. 서식을 변경할 수 없습니다. 맞춤 형식이 필요한 경우 google.maps.places.AutocompleteService 클래스를 기반으로 자체 자동 완성을 구현해야합니다. https://developers.google.com/maps/documentation/javascript/reference#AutocompleteService 문서를 확인하십시오. – xomena