首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何删除或替换SVG内容?

如何删除或替换SVG内容?
EN

Stack Overflow用户
提问于 2012-05-28 19:34:45
回答 8查看 238.9K关注 0票数 220

我有一段创建(使用D3.js)包含图表的svg元素的JavaScript代码。我希望使用AJAX基于来自web服务的新数据来更新图表,问题是每次单击更新按钮时,它都会生成一个新的svg,因此我希望删除旧的或更新其内容。

下面是我在其中创建svg的JavaScript函数的一个片段

代码语言:javascript
复制
var svg = d3.select("body")
        .append("svg")
        .attr("width", w)
        .attr("height", h);

如何删除旧的svg元素或至少替换其内容?

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2012-06-06 17:30:10

以下是解决方案:

代码语言:javascript
复制
d3.select("svg").remove();

这是D3.js提供的remove函数。

票数 306
EN

Stack Overflow用户

发布于 2014-06-17 02:43:16

如果你想摆脱所有的孩子,

代码语言:javascript
复制
svg.selectAll("*").remove();

将删除与svg关联的所有内容。

票数 168
EN

Stack Overflow用户

发布于 2014-03-31 20:40:31

在附加svg元素时设置id属性还可以让d3稍后通过id在此元素上选择so remove():

代码语言:javascript
复制
var svg = d3.select("theParentElement").append("svg")
.attr("id","the_SVG_ID")
.attr("width",...

...

d3.select("#the_SVG_ID").remove();
票数 63
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10784018

复制
相关文章

相似问题

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