这是我的代码
var map_canvas = document.getElementById('map_canvas');
var map_options = { center: new google.maps.LatLng(44.5403, -78.5463), zoom: 8, mapTypeId: google.maps.MapTypeId.ROADMAP }
map = new google.maps.Map(map_canvas, map_options);
google.maps.event.addListener(map, 'click', function(event) {
if(marker){
marker.setMap(null);
}
marker = new google.maps.Marker({
position: event.latLng,
map: map
});
$("#latitude").val(event.latLng.lat());
$("#longitude").val(event.latLng.lng());
map.setCenter(event.latlng);
});
console.log($("#longitude").val());
if (($("#latitude").val()) && ($("#longitude").val())){
var point = new google.maps.LatLng(($("#latitude").val()), ($("#longitude").val()));
marker = new google.maps.marker({
position: point,
map: map
});
map.setCenter(point, 8);
}
请注意我添加了一个监听器,点击地图上添加标记,它正在工作。我的意思是当我点击地图时,标记出现。
但是,当我提交页面时,如果输入中有错误,我会将页面返回给用户。在这种情况下,如果使用添加了地图,我想为他创建地图。这就是我使用这段代码的原因:
console.log($("#longitude").val());
if (($("#latitude").val()) && ($("#longitude").val())){
var point = new google.maps.LatLng(($("#latitude").val()), ($("#longitude").val()));
marker = new google.maps.marker({
position: point,
map: map
});
map.setCenter(point, 8);
然而,我在Uncaught TypeError: undefined is not a function
行中遇到异常marker = new google.maps.marker({
你可以帮忙吗?
答案 0 :(得分:2)
确保您对Google Maps API函数名称使用正确的大小写,google.maps.marker
应为google.maps.Marker
。