我有一张图表。我加载了一个我解析的文件,以获取我需要对图形进行的更改。有关更改的信息以节点名称的形式出现,节点名称存储在每个节点的文本字段中。
如何根据文本字段的内容选择节点,以便我可以将其删除?
我要删除的节点的HTML如下所示。
<circle style="fill: rgb(204, 204, 204);" r="8"></circle><text dy=".35em" x="12">d1</text>
答案 0 :(得分:0)
1)您可以将元素的类设置为(也)是您在设置文本内容时的文本内容。然后你可以按班选择。
2)如果你可以为这个元素应用一个选择器,你可以得到一个元素的文本内容:
selection.text()
另请参阅:https://github.com/mbostock/d3/wiki/Selections#text
3)在大多数情况下,您可以使用某些数据动态设置文本。如果数据绑定到元素,则将使用标准回调函数
selection.filter( function (d,i) {...// filter based on d }).remove();
答案 1 :(得分:0)
这使得您的文本节点在我想要删除的圆节点之外变得很难。但如果不是,你可以这样做:
d3.selectAll('circle>text').filter(function(d){
return d3.select(this).text() ==="d1";
}).remove()