使用D3在选定的单选按钮之间切换

Gay*_*hri 0 javascript d3.js

考虑我在html中有4个单选按钮

<form id="form">
    <input type="radio" name="stack" value="north">north<br>
    <input type="radio" name="stack" value="east" >east<br>
    <input type="radio" name="stack" value="west">west<br>
    <input type="radio" name="stack" value="south">south
</form>
Run Code Online (Sandbox Code Playgroud)

如何使用D3.js获取所选单选按钮的值并在选择时分配到全局变量,这样我可以在选择之间切换?

Ger*_*ado 6

如果这些是 您拥有的唯一输入,您可以:

d3.selectAll("input").on("change", function(){
    console.log(this.value)
});
Run Code Online (Sandbox Code Playgroud)

要仅选择特定的单选按钮组,请使用以下内容name:

d3.selectAll("input[name='stack']").on("change", function(){
    console.log(this.value)
});
Run Code Online (Sandbox Code Playgroud)

将其分配给全局(无声明var):

d3.selectAll("input[name='stack']").on("change", function(){
    globalVariable = this.value;
});
Run Code Online (Sandbox Code Playgroud)

这是演示:

d3.selectAll(("input[name='stack']")).on("change", function(){
console.log(this.value)
});
Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.4.11/d3.min.js"></script>
<form id="form">
    <input type="radio" name="stack" value="north">north<br>
    <input type="radio" name="stack" value="east" >east<br>
    <input type="radio" name="stack" value="west">west<br>
    <input type="radio" name="stack" value="south">south
</form>
Run Code Online (Sandbox Code Playgroud)