Javascript 基于id的d3.js选择
我有一个HTML表格和一个按钮 这是我的html表的一部分:Javascript 基于id的d3.js选择,javascript,jquery,d3.js,Javascript,Jquery,D3.js,我有一个HTML表格和一个按钮 这是我的html表的一部分: <tbody> <tr id="13"> <td>Dave's Double Cheeseburger</td> <td>800.0</td> <td>50.0</td> <td>42.0</td> <td>48.0</td>
<tbody>
<tr id="13">
<td>Dave's Double Cheeseburger</td>
<td>800.0</td>
<td>50.0</td>
<td>42.0</td>
<td>48.0</td>
<td>wendys</td>
<td>
<div id="option">
<button id="13" type="button" name="button">
click here for graph
</button>
</div>
</td>
JS代码并没有给我带来任何问题,但我想把它作为目标
<tr id = button id>
但是当我执行d3.select(“[trid=”+buttonid+“]”)时,
会说它不是有效的选择器
有关于d3.js选择的帮助吗 您可以在以下位置读取d3中的选择。在您的情况下,您可能只需要以下基本理解
d3.select('tag'); // d3 select elements by tag such as "div"
d3.select('.class'); // d3 select elements by class such as ".myDivs"
d3.select('#id'); // d3 select elements by id such as "#myDiv"
也就是说,您的代码需要一些额外的工作。您的按钮id需要以字母开头(HTML id属性不能以数字开头),并且不能以这种方式链接select
和selectAll
。似乎您想要选择包装被单击按钮的td元素。如果是这样,则需要如下所示:
$('button').click(function() {
// get td grandparent of clicked button
var tdElem = this.parentNode.parentNode;
// d3 select the td element
var chartdata = d3.select(tdElem);
});
如果d3节点上有ID,这应该可以工作
d3.select("g[id='" + localid + "']");
d3.选择(“#”+buttonid)
有效吗?您的文档中不允许有重复的ID。查看HTML5了解更多详细信息。
d3.select("g[id='" + localid + "']");