我正在使用范围 slider ,它将数据输出到输入字段中。我尝试将该数据乘以 50 并在其下方显示结果,但该脚本仅在我手动将数据输入该字段时才有效。
例如,如果您在该字段中写入 5,您将得到 250,但如果您只是移动 slider ,则不会发生任何变化。
如何强制 jQuery 刷新数据?
jQuery("#slidervalue").change(function(){
var unit = parseFloat(jQuery(".unit").attr("data-init-unit"));
var multiplier = parseInt(jQuery("#slidervalue").val());
jQuery(".unit").html(unit * multiplier);
});
这是完整的 JSFiddle: https://jsfiddle.net/2tjx7e19/
谢谢!
最佳答案
您可以拆分 change
和 keyup
事件,并仅在 keyup
上处理 slider 的更新。
然后,当您根据 slider 更新输入值时,您可以通过编程方式触发 change
事件。
看看你的 fiddle fork :https://jsfiddle.net/uand5wfx/3/
更新:
要完全跳过输入,您可以在调用 slider update
函数时设置输出元素的内容。这样代码就会短很多。看看这个新 fiddle :
https://jsfiddle.net/3jk5s4tg/
希望这有帮助。
关于javascript - jQuery 强制刷新输入数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61258390/