如何在选择时更改javascript值
当用户选择不同的城市时,我需要更改google地图的初始化坐标。当我选择一个选项时,地图的初始坐标需要更改 我的标记:如何在选择时更改javascript值,javascript,jquery,google-maps,Javascript,Jquery,Google Maps,当用户选择不同的城市时,我需要更改google地图的初始化坐标。当我选择一个选项时,地图的初始坐标需要更改 我的标记: <select class='form-control' id='id_district' type='text' name="district"> <option value='' disabled selected>District *</option> <option value="Limassol">Lim
<select class='form-control' id='id_district' type='text' name="district">
<option value='' disabled selected>District *</option>
<option value="Limassol">Limassol</option>
<option value="Nicosia">Nicosia</option>
<option value="Paphos">Paphos</option>
<option value="Larnaca">Larnaca</option>
<option value="Ammoxostos">Ammoxostos</option>
</select>
此函数需要使用jQuery进行更改当选择更改时,您需要调用地理编码器(而不是反向地理编码器):
<select class='form-control' id='id_district' type='text' name="district" onchange="geocodeAddress(this.value);">
function geocodeAddress(address) {
geocoder.geocode({
'address': address
}, function(results, status) {
if (status === google.maps.GeocoderStatus.OK) {
if (results[0].geometry.viewport) {
map.fitBounds(results[0].geometry.viewport);
} else if (results[0].geometry.bounds) {
map.fitBounds(results[0].geometry.bounds);
} else {
map.setCenter(results[0].geometry.location);
}
if (marker && marker.setMap) {
marker.setMap(null);
}
marker = new google.maps.Marker({
map: map,
position: results[0].geometry.location
});
} else {
alert('Geocode was not successful for the following reason: ' + status);
}
});
}
html,
身体{
身高:100%;
保证金:0;
填充:0;
}
#地图画布{
身高:100%;
}
地区*
利马索尔
尼科西亚
帕福斯
拉纳卡
阿莫克索斯托斯
这可能有助于使用Geocoder,但最好对lat/lng进行静态解析并替换-
<select class='form-control' id='id_district' type='text' name="district" onchange="geocodeAddress(this.value);">
function geocodeAddress(address) {
geocoder.geocode({
'address': address
}, function(results, status) {
if (status === google.maps.GeocoderStatus.OK) {
if (results[0].geometry.viewport) {
map.fitBounds(results[0].geometry.viewport);
} else if (results[0].geometry.bounds) {
map.fitBounds(results[0].geometry.bounds);
} else {
map.setCenter(results[0].geometry.location);
}
if (marker && marker.setMap) {
marker.setMap(null);
}
marker = new google.maps.Marker({
map: map,
position: results[0].geometry.location
});
} else {
alert('Geocode was not successful for the following reason: ' + status);
}
});
}