编写的厘米转英寸程序无输出显示,寻求技术排查帮助
问题:厘米转英寸程序点击按钮后无输出
问题出在你给自定义函数起的名字click上——这个名称和DOM元素的内置click()方法重名了。当你点击按钮时,浏览器会优先调用按钮自身的click方法,完全没执行你写的转换逻辑,所以结果区域自然没内容。
修复方案
把自定义函数名改成一个不冲突的名字,比如convertCmToInch,同时更新按钮的onclick属性指向新函数:
修改后的JavaScript代码
function convertCmToInch() { let cmVal = Number(document.getElementById("input").value) let inch = cmVal / 2.54 let result = document.getElementById("result") result.innerHTML = inch }
修改后的HTML代码
<div id="container"> <h3>Calculation</h3> <div class="input val"> <input type="text" id="input" placeholder="enter cm value"> </div> <div> <button type="submit" onclick="convertCmToInch()">convert to inches</button> </div> <div id="result"> </div> </div>
额外建议
如果想更规范,推荐用addEventListener绑定点击事件,避免在HTML里写内联事件,也能彻底避免这类命名冲突问题:
// 等DOM加载完成后绑定事件 document.addEventListener('DOMContentLoaded', function() { const convertBtn = document.querySelector('button'); convertBtn.addEventListener('click', function() { let cmVal = Number(document.getElementById("input").value) let inch = cmVal / 2.54 let result = document.getElementById("result") result.innerHTML = inch }); });
对应的HTML可以去掉onclick属性:
<button type="submit">convert to inches</button>
内容的提问来源于stack exchange,提问作者Sharjan C
相关产品推荐
相关产品推荐

