JavaScript中HTML元素内容转整数后按钮失效,请求排查错误原因
问题分析与解决
两个核心错误:
getElementById参数格式错误:document.getElementById()接收的是纯ID字符串,不需要加#。你写的document.getElementById("#integer")会返回null,导致counter被赋值为NaN,后续递增操作自然无效。- 未同步更新DOM内容:就算
counter成功递增,你也没把新值写回h1标签里,页面上的数字不会变化,看起来就像点击没效果。
修正后的代码:
JavaScript代码
let counter = parseInt(document.getElementById("integer").innerHTML); let incbutton = document.querySelector("#increase"); incbutton.addEventListener("click", increase); function increase() { counter += 1; // 把递增后的值更新到页面上的h1标签 document.getElementById("integer").innerHTML = counter; }
HTML代码(保持不变)
<h1 id="integer">100</h1> <button id="increase">Increase</button>
内容的提问来源于stack exchange,提问作者asamet
相关产品推荐
相关产品推荐

