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

使用JS实现两个输入框值求和功能运行异常如何解决?

代码存在两个核心错误:

  • document.getElementsByClassName() 返回的是HTMLCollection元素集合,不是单个DOM元素,必须指定索引(此处取第一个匹配元素即[0])才能读取value、修改innerHTML属性,直接调用属性会得到undefined导致逻辑失效。
  • 数值转换时机错误:输入框读取的value默认是字符串类型,先做+操作会执行字符串拼接而非数值相加,需要先分别将两个输入值转为数值类型,再执行加法运算。

修复后可运行的完整代码:

<input class="field1" type="text">
<input class="field2" type="text">
<p class="field3"></p>
<button onclick="calculate()">Calculate</button>

<script>
function calculate(){
  // 取集合第一个元素再读value
  let ipt1 = document.getElementsByClassName("field1")[0].value;
  let ipt2 = document.getElementsByClassName("field2")[0].value;
  let results = document.getElementsByClassName("field3")[0];
  // 先分别转数值再相加
  let total = Number(ipt1) + Number(ipt2);
  results.innerHTML = total;
}
</script>

内容的提问来源于stack exchange,提问作者Ganda W Maung

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 17:18:00