javascript - 如何修复此功能?Javascript
问题描述
我正在尝试创建一个函数,通过给出您需要行驶的距离和引擎的消耗来计算您需要的汽油量,但是当我单击按钮时没有任何反应,这里是代码:
function calc() {
var dist = document.getElementById("distance").value
var cons = document.getElementById("cons").value
var res = dist / 100 * cons
res.innerText = "You need " + res + "liters of gas.";
}
function load() {
var button = document.getElementById("button");
button.addEventListener("click", calc, false);
}
<main onload="load();">
<h2>Calculate how much gas you need</h2>
<input type="number" class="number" id="dist"><br/>
<input type="number" class="number" id="cons"><br/><br/>
<input type="button" class="button" id="button" value="Submit"><br/>
<p id="res"></p>
</main>
解决方案
您的代码中有几个问题:
load()
您可以通过执行所有代码来忽略DOMContentLoaded
.您应该参考元素p来替换
innerText
属性
我还建议您在命名属性时更加小心。
代码示例:
<script>
document.addEventListener('DOMContentLoaded', (event) => {
function calc() {
var dist = document.getElementById("dist").value
var cons = document.getElementById("cons").value
var resEl = document.getElementById('res');
var res = dist / 100 * cons
resEl.innerText = "You need " +res+"liters of gas.";
}
var button = document.getElementById("calcButton");
button.addEventListener("click", calc);
});
</script>
<main>
<h2>Calculate how much gas you need</h2>
<input type="number" class="number" id="dist"><br/>
<input type="number" class="number" id="cons"><br/><br/>
<input type="button" class="clsButton" id="calcButton" value="Submit"><br/>
<p id="res"></p>
</main>
推荐阅读
- javascript - 对对象方法执行 javascript (ES6) 回调
- c++ - 使用 cmake 添加标志
- python - Python 编写 .sh 脚本 - \n 导致脚本无法解析
- excel - 累积所有前几年但同月的值。(动力枢轴)
- java - 如何在 Jersey 中使用 @BackgroundScheduler 注册后台任务
- linux - 我无法更改我的 linux 权限。我想创建一个 .env 文件
- linq - 用于在另一个集合中填充集合的 LINQ 查询
- vaadin - 今天突然:Java live reload 不可用
- python - Python 对象列表更新
- javascript - 我正在尝试使用 npm parcel -g 命令全局安装 Parcel