从我所做的挖掘来看,我似乎想使用.on,但我知道如何实现它。我还在学习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
发布于 2013-02-02 09:15:16
这条线
$('#new+ site_count).remove();有三个问题:
',所以它会导致语法错误。div赋予ID newsiteX,但该行试图使用ID newX来查找它。div之后,您将递增site_count,但是稍后您将尝试使用site_count的新值来查找div,所以不会这样做。也就是说,如果site_count是0,并且您创建了一个新的div,那么id "newsite0"和site_count将被增加到1。然后,当您点击删除它,即使您修复上面的项目,您将寻找newsite1而不是newsite0。您还没有向您展示足够的代码,使我无法自信地为您更正它,但可能是这样的:
$('#newsite' + (site_count - 1)).remove();尽管如此,您可能想退一步,深入了解一下结构,这看起来有点脆弱(但可能很好)。
https://stackoverflow.com/questions/14660365
复制相似问题