基于ID的d3.js选择

时间:2018-06-27 19:14:25

标签: javascript jquery d3.js

我有一个HTML表和一个按钮。

这是我的html表的一部分:

airflow webserver -D

我的d3.js代码是

<tbody>

<tr id="13">

    <td>Dave&#39;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代码不会给我带来任何问题,但我想定位

$("button").click(function () {
    var buttonid = this.id
    console.log(buttonid)
    // above uses jQuery to display the id of button clicked

    var chartdata = d3.select("[id='" + buttonid + "']").selectAll("td")
})

但是当我执行<tr id = button id> 时,它说这不是有效的选择器。

对d3.js选择有帮助吗?

2 个答案:

答案 0 :(得分:0)

您可以在d3-selection上阅读d3中的选择。就您而言,您可能只需要以下基本理解。

pyspark.sql.functions

也就是说,您的代码需要做一些额外的工作。您的按钮ID必须以字母开头(HTML ID属性不能以数字开头),并且您不能以这种方式链接 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" select。似乎您想选择包装要单击的按钮的td元素。如果是这样,则必须是以下内容:

selectAll

答案 1 :(得分:-1)

只要您的d3节点附加了ID,这应该可以工作。

d3.select("g[id='" + localid + "']");