Javascript d3.js选择不起作用

Javascript d3.js选择不起作用,javascript,html,dom,d3.js,Javascript,Html,Dom,D3.js,在这种情况下,两个输入(文本框和滑块)都相互绑定。当拖动滑块时,它会完美地更新文本框。但是,当手动更改textbox值时,它不会更新滑块位置。在对文本框进行任何手动更改后,滑块在拖动时不再更新文本框。请帮我找出这种行为的原因 HTML 尝试对滑块使用“幻灯片”事件,而不是“输入” 您可能还想查看示例。使用HTML滑块(而不是d3滑块,这是另一个选项),“value”属性只设置初始值 要动态设置,请使用属性 d3.select("#slider").property("value", this.v

在这种情况下,两个输入(文本框和滑块)都相互绑定。当拖动滑块时,它会完美地更新文本框。但是,当手动更改textbox值时,它不会更新滑块位置。在对文本框进行任何手动更改后,滑块在拖动时不再更新文本框。请帮我找出这种行为的原因

HTML


尝试对滑块使用“幻灯片”事件,而不是“输入”

您可能还想查看示例。

使用HTML滑块(而不是d3滑块,这是另一个选项),“value”属性只设置初始值

要动态设置,请使用属性

d3.select("#slider").property("value", this.value);

d3.slider不在“官方”d3.js中,是吗?那你不是在直接解决他的问题。不过,你可能会认为哈立德的作品很有魅力,谢谢。然而,我不得不使用“属性”而不是“属性”来更新文本字段。我不明白的是,文本字段会随着滑块的变化而变化,直到手动更新为止。只要我更改文本字段中的值,滑块就不再更新它。但是,在将textfield的“attr”更改为“property”后,已修复了此问题。
d3.select("#textbox").on("input", function() {
   // the following line is not updating slider position
   d3.select("#slider").attr("value", this.value);

   // when the following lines are un-commented it works perfectly
   // var s = document.getElementById("slider");
   // s.value = this.value;
});

d3.select("#slider").on("input", function() {
  d3.select("#textbox").attr("value", this.value);
});
d3.select("#slider").property("value", this.value);