You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用JS将两个输入框的求和结果赋值给range滑块调整其取值

问题原因

你的代码存在两个核心问题导致赋值不生效:

  • 表单内的按钮默认是提交类型,点击后会触发表单提交、页面刷新,刚执行的赋值逻辑会被刷新重置
  • 求和后赋值给r的逻辑错误:console.log()仅用于控制台打印,本身没有返回值,所以parseInt(console.log(x + c))得到的是NaN,自然无法正常赋值给range组件

修复方案

修改后的完整代码如下:

JS代码

function ra() {
  var a = document.getElementById('ss');
  a.style.display = a.style.display === "none" ? "block" : "none";
}

function ss() {
  // 取值同时加非空兜底,避免空输入得到NaN
  var x = parseInt(document.getElementById("myText").value) || 0;
  var c = parseInt(document.getElementById("my").value) || 0;
  // 直接求和即可,调试打印可以单独写console.log(r)
  var r = x + c;
  document.getElementById("ran").value = r;
}

HTML代码

<form>
  <input type="checkbox" name="ABA" onclick="ra()" value="Applied Behaviour Analysis">Applied Behaviour Analysis
  <div id="ss" style="display: none;">
    <input type="number" id="myText" value="">
    <input type="number" id="my" value="">
    <!-- 给按钮加type="button",阻止默认表单提交行为 -->
    <button type="button" onclick="ss()">calculate</button>
    <!-- 可根据实际需求调整range的min、max范围,默认范围是0-100 -->
    <input type="range" id="ran" min="0" max="200" value="0">
  </div>
</form>

CSS代码(无改动)

body {
  background-color: black;
  color: white;
}

内容的提问来源于stack exchange,提问作者SushantUniversity

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 12:24:03