JS新手求助:简易加法器功能实现故障排查
简易加法器代码修复方案
你的代码存在几个关键问题,导致功能无法正常运行,以下是问题说明和修正后的代码:
问题分析
- parseFloat使用错误:你把变量
t1和t2用引号包裹成了字符串"t1"、"t2",还多余调用了.value——t1和t2已经是从input获取到的value值,直接传入parseFloat即可。 - input内容更新方式错误:input元素的内容需要通过
.value属性设置,而非.innerHTML,后者用于更新元素的内部HTML结构,不适用于input这类表单控件。
修正后的完整代码
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>简易加法器</title> </head> <body> <input type="text" id="txt1" value="0"/> <button onclick="AddNumbers()">Add</button> <input type="text" id="txt2" value="0"/> <script> function AddNumbers() { // 获取输入框的值并转为数字,默认值设为0避免非数字输入报错 var t1 = parseFloat(document.getElementById("txt1").value) || 0; var t2 = parseFloat(document.getElementById("txt2").value) || 0; var sum = t1 + t2; if (sum > 1000){ window.alert("Over 1000"); } else { // 更新总和输入框的value document.getElementById("txt2").value = sum; } } </script> </body> </html>
额外优化说明
- 加入了
|| 0的容错处理:如果用户输入非数字内容,会自动转为0,避免出现NaN(非数字)的错误结果。 - 调整了title为更清晰的名称,方便识别页面功能。
内容的提问来源于stack exchange,提问作者Vaggelis Soti
相关产品推荐
相关产品推荐

