我是 Javascript 和 google map api 的新手,我一直按照这个链接删除标记,但有些我无法让它工作。
基本上我想在用户输入地址并单击按钮时使用按钮生成标记。当用户输入新地址并再次单击按钮时,旧标记将被移除,新地址上的新标记销。标记也是可拖动的。
这是我的js代码:
$('#geocode').live('click',function() {
codeAddress();
return false;
});
function codeAddress() {
var address = document.getElementById('location').value;
geocoder.geocode( { 'address': address}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
map.setCenter(results[0].geometry.location);
if (marker) marker.setMap(null);
if (marker) delete marker;
var marker = new google.maps.Marker({
draggable:true,
map: map,
position: results[0].geometry.location
});
var newlat = results[0].geometry.location.lat();
var newlng = results[0].geometry.location.lng();
document.getElementById('mwqsflatlng').value = (newlat+' , '+newlng);
draggeablemarker(marker);
} else {
alert('Geocode was not successful for the following reason: ' + status);
}
});
}
更新 当我检查检查元素时,它给了我这个错误:
未捕获的类型错误:无法调用未定义的方法“setMap”