Javascript 从GMAP添加/删除标记
我需要根据checkox的状态添加/删除标记 下面是我的添加/删除功能(无法正常工作): 函数getPointOnMap(mapObj){ var position=new google.maps.LatLng(mapObj.latitude,mapObj.longtude); if(markers.length!=0){Javascript 从GMAP添加/删除标记,javascript,jquery,google-maps,google-maps-api-3,Javascript,Jquery,Google Maps,Google Maps Api 3,我需要根据checkox的状态添加/删除标记 下面是我的添加/删除功能(无法正常工作): 函数getPointOnMap(mapObj){ var position=new google.maps.LatLng(mapObj.latitude,mapObj.longtude); if(markers.length!=0){ 对于(var i=0;i而言,js函数中的cycle+misspelling存在逻辑错误。 下面是监听复选框操作的完整工作函数: function getPointOnMap
对于(var i=0;i而言,js函数中的cycle+misspelling存在逻辑错误。 下面是监听复选框操作的完整工作函数:
function getPointOnMap(mapObj) {
var position = new google.maps.LatLng(mapObj.lattitude, mapObj.longtitude);
console.log(markers);
var count = 0;
if(markers.length!=0){
for(var i=0; i<markers.length; i++){
if(markers[i].getPosition().toString() == position.toString()){
count ++;
console.log("1");
markers[i].setMap(null);
markers.splice(i);
}
}
if(count==0) {
var marker = new google.maps.Marker({
position: new google.maps.LatLng(mapObj.lattitude, mapObj.longtitude),
map: map });
markers.push(marker);
}
} else {
console.log("3");
var marker = new google.maps.Marker({
position: new google.maps.LatLng(mapObj.lattitude, mapObj.longtitude),
map: map });
markers.push(marker);
}
console.log(markers);
}
函数getPointOnMap(mapObj){
var position=new google.maps.LatLng(mapObj.latitude,mapObj.longtude);
控制台日志(标记);
var计数=0;
if(markers.length!=0){
for(var i=0;i控制台在第二部分说什么?它在做什么或不做什么?为什么要在for子句中执行函数(n)?@alkis第二部分工作得很好。我只是发布它来显示它,没有其他内容(markers[i].getPosition().toString()==position.toString()){marker.setMap(null);如果(markers[i].getPosition().toString()==position.toString()){markers[i].setMap(null);让我们
$.ajax({
type : "POST",
url : "/getElements.json",
success : function(result) {
var html = '';
for ( var i = 0; i < result.length; i++) {
(function(n) {
var obj = result[i];
if (obj.field == 0) {
element = $("<input>", {
type : "checkbox",
id : obj.id
});
element.click(function() {
getPointOnMap(obj);
});
$("#orders").append(element,
obj.address + "<br />");
}
})(i)
}
}
});
function getPointOnMap(mapObj) {
var position = new google.maps.LatLng(mapObj.lattitude, mapObj.longtitude);
console.log(markers);
var count = 0;
if(markers.length!=0){
for(var i=0; i<markers.length; i++){
if(markers[i].getPosition().toString() == position.toString()){
count ++;
console.log("1");
markers[i].setMap(null);
markers.splice(i);
}
}
if(count==0) {
var marker = new google.maps.Marker({
position: new google.maps.LatLng(mapObj.lattitude, mapObj.longtitude),
map: map });
markers.push(marker);
}
} else {
console.log("3");
var marker = new google.maps.Marker({
position: new google.maps.LatLng(mapObj.lattitude, mapObj.longtitude),
map: map });
markers.push(marker);
}
console.log(markers);
}