从挖掘过程中我已经完成它看起来我想要使用。但是我要注意如何实现它。我还在学习javascript和jquery,所以我可能会遗漏一些东西......
将标记添加到Google地图(v3 api)时,会运行以下代码。它会创建一个标记并添加一个表单字段。如果用户然后单击新创建的标记,则标记将被隐藏,然后代码也应该删除该表单。标记删除很好,但我无法删除。这是我正在寻求帮助的线:
$('#newdiv + site_count).remove();
如果我手动将newdiv + site_count替换为有效数字(比如6,那么newdiv6)代码可以正常工作,我只是无法弄清楚如何实时引用它......最后这里是相关代码的其余部分:
google.maps.event.addListener(map, "click", function(event) {
marker = new google.maps.Marker({
position: event.latLng,
map: map
});
newlocation = "<div id='newdiv" + site_count + "'><input type='text' size='3' name='loc[" + site_count + "]' id='newid" + site_count + "' value = '0' /></div>";
$('#here').append(newlocation)
google.maps.event.addListener(marker, "click", function(event) {
marker.setVisible(false);
$('#new+ site_count).remove();
});
site_count++;
})
感谢您花时间看看我的问题。 --AJ
答案 0 :(得分:2)
这一行
$('#new+ site_count).remove();
有三个问题:
没有结束'
,因此会导致语法错误。
您将div
包含ID newsiteX
的表单字段,但该行正在尝试使用ID newX
来查找它。
创建新div
后,您正在递增site_count
,但稍后您尝试使用{{>新值{{}来查找div 1}},所以你不会。也就是说,如果site_count
为site_count
并且您创建了新的div,那么0
id
和"newsite0"
会增加到{{1} }}。然后,当您单击时将其删除,即使您修复了上述项目,您也会找到site_count
而不是1
。
你没有向我展示足够的代码,让我自信地为你纠正,但可能是这样的:
newsite1
那就是说,你可能想退后一步,深入研究一下这个结构,这看起来有点脆弱(但可能还不错)。