首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >删除从Google地图标记单击中触发的动态创建的<div>

删除从Google地图标记单击中触发的动态创建的<div>
EN

Stack Overflow用户
提问于 2013-02-02 09:12:31
回答 1查看 651关注 0票数 0

从我所做的挖掘来看,我似乎想使用.on,但我知道如何实现它。我还在学习javascript和jquery所以我可能遗漏了一些东西..。

下面的代码是在将标记添加到Google (v3 api)时运行的。它创建一个标记并添加一个表单字段。如果用户随后单击新创建的标记,则标记被隐藏,代码也应该删除表单。标记移除很好,但我不能把它移除。这是我要找人帮忙的线路:

代码语言:javascript
复制
    $('#newdiv + site_count).remove(); 

如果我手动将newdiv+ site_count替换为一个有效的数字(例如6,所以newdiv6),那么代码可以工作,我只是不知道如何实时引用它.最后,下面是相关代码的其余部分:

代码语言:javascript
复制
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

EN

回答 1

Stack Overflow用户

发布于 2013-02-02 09:15:16

这条线

代码语言:javascript
复制
$('#new+ site_count).remove();

有三个问题:

  1. 没有关闭的',所以它会导致语法错误。
  2. 您给包含表单字段的div赋予ID newsiteX,但该行试图使用ID newX来查找它。
  3. 在创建新的div之后,您将递增site_count,但是稍后您将尝试使用site_count的新值来查找div,所以不会这样做。也就是说,如果site_count0,并且您创建了一个新的div,那么id "newsite0"site_count将被增加到1。然后,当您点击删除它,即使您修复上面的项目,您将寻找newsite1而不是newsite0

您还没有向您展示足够的代码,使我无法自信地为您更正它,但可能是这样的:

代码语言:javascript
复制
$('#newsite' + (site_count - 1)).remove();

尽管如此,您可能想退一步,深入了解一下结构,这看起来有点脆弱(但可能很好)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14660365

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档