Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 删除特定标记APIv3_Javascript_Arrays_Google Maps - Fatal编程技术网

Javascript 删除特定标记APIv3

Javascript 删除特定标记APIv3,javascript,arrays,google-maps,Javascript,Arrays,Google Maps,如何删除谷歌地图中的特定标记?我尝试了下面的代码,但得到了TypeError:marker[1]未定义error。如果没有[1],则仅删除第一个标记 google.maps.event.addDomListener(deletemark, 'click', function() { marker[1].setMap(null); }); } (从注释中,稍加编辑)这就是我如何创建标记以及标记的lat,长数组 var locations = [ [56.066877,21.0

如何删除谷歌地图中的特定标记?我尝试了下面的代码,但得到了
TypeError:marker[1]未定义
error。如果没有[1],则仅删除第一个标记

google.maps.event.addDomListener(deletemark, 'click', function() {
          marker[1].setMap(null);
});
}

(从注释中,稍加编辑)这就是我如何创建标记以及标记的lat,长数组

var locations = [ [56.066877,21.069274], [55.279849,26.048155] ]; // removed "hanging comma"
for (i = 0; i < locations.length; i++) 
{
  marker = new MarkerWithLabel({
    position: new google.maps.LatLng(locations[i][0], locations[i][1]), 
    map: map // removed "hanging comma"
  });
} // added missing close bracket 
var位置=[[56.066877,21.069274],[55.279849,26.048155];//删除“挂起逗号”
对于(i=0;i
您的问题是您有一个标记变量,左指您创建的最后一个标记(不是第一个)。如果要删除其他标记,则需要保留对它们的引用(在数组中或通过使用函数闭包)。

您的问题在于有一个标记变量,左指向您创建的最后一个标记(而不是第一个)。如果要删除其他标记,需要保留对它们的引用(在数组中或使用函数闭包)。

尝试使用数组存储标记

var markerArray=[];
var locations = [ [56.066877,21.069274], [55.279849,26.048155] ];
for (i = 0; i < locations.length; i++) 
{
 marker = new MarkerWithLabel({
 position: new google.maps.LatLng(locations[i][0], locations[i][1]), 
 map: map // removed "hanging comma"
 });
markerArray.push(marker);
} /

尝试使用数组存储标记

var markerArray=[];
var locations = [ [56.066877,21.069274], [55.279849,26.048155] ];
for (i = 0; i < locations.length; i++) 
{
 marker = new MarkerWithLabel({
 position: new google.maps.LatLng(locations[i][0], locations[i][1]), 
 map: map // removed "hanging comma"
 });
markerArray.push(marker);
} /

定义标记的代码是什么样子的?除了第一个,你有其他的参考资料吗?你的代码如何知道哪个标记是要删除的“特定”标记?这就是我如何在数组
中为(I=0;I
var位置=[[56.066877,21.069274],[55.279849,26.048155],]
如果您用附加信息编辑您的问题会更好,阅读注释中的代码确实很困难。定义标记的代码是什么样子的?除了第一个标记外,您是否引用了其他标记?您的代码如何知道哪个标记是“特定的”要删除的一个?这是我为(I=0;I
var locations=[56.066877,21.069274],[55.279849,26.048155],];
若你们用额外的信息编辑你们的问题会更好,阅读评论中的代码确实很难。避免在javascripts上为..循环,避免在javascripts上为..循环,