Javascript 谷歌地图自动完成时,点击按钮获取面积
为了得到与谷歌地图搜索栏相同的结果,我做了很多尝试。 我正在谷歌地图的搜索栏中使用以下代码Javascript 谷歌地图自动完成时,点击按钮获取面积,javascript,google-maps-api-3,Javascript,Google Maps Api 3,为了得到与谷歌地图搜索栏相同的结果,我做了很多尝试。 我正在谷歌地图的搜索栏中使用以下代码 google.maps.event.addListener(autocomplete, 'place_changed', function() { var place = autocomplete.getPlace(); //alert(place.address_components.length); for (var i=0; i<place.address_component
google.maps.event.addListener(autocomplete, 'place_changed', function() {
var place = autocomplete.getPlace();
//alert(place.address_components.length);
for (var i=0; i<place.address_components.length; i++) {
for (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;
}
}
}
});
google.maps.event.addListener(自动完成,'place\u changed',function(){
var place=autocomplete.getPlace();
//警报(位置、地址、组件、长度);
对于(var i=0;i当您希望从autocomplete获取结果时,获取它们(并且不请求地理编码器),实际上我知道地址,如“德黑兰,伊朗”,然后我想点击按钮,然后我得到这个地址,并将地址地理编码为代码中的地址,但不会给出路线、位置、行政区域1级等相同的结果。。
<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>
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]) {
for (var i=0; i<results[1].address_components.length; i++) {
for (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])
{
for (var i=0; i<results[0].address_components.length; i++) {
for (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;
}
}
}
}