我正在学习 Javascript...慢慢地...并尝试用一个小计算器测试我的知识...
HTML:
<form id="calculator" onSubmit="multiply()">
<input type="number" id="first">
*
<input type="number" id="second">
<input type="submit"> = <span id="answer"></span>
</form>
Javascript:
function multiply() {
var x = document.getElementById("first").value;
var y = document.getElementById("second").value;
var z = x * y;
document.getElementById("answer").innerHTML = z;
}
我遇到但不知道的问题是为什么在表单提交/按钮单击/返回键上页面会刷新?我究竟做错了什么?简单的 Javascript 中的答案是什么?我知道计算器在一定程度上可以工作,因为答案在刷新之前会在页面上闪烁,但它确实如此。为什么?
(我知道这个问题之前已经被问过,但我找不到简单的 Javascript 答案和/或我能理解的解释)。
最佳答案
在方法中使用return false并在提交时修改以返回multiply()。 这是脚本
function multiply() {
var x = document.getElementById("first").value;
var y = document.getElementById("second").value;
var z = x * y;
document.getElementById("answer").innerHTML = z;
return (false);
}
这是修改后的 HTML
<form id="calculator" onSubmit="return multiply()" method="post">
<input type="number" id="first"> *
<input type="number" id="second">
<input type="submit"> = <span id="answer"></span>
</form>
这是 jsfiddle - https://jsfiddle.net/anuraj_p/sjvvod8q/
关于javascript - 表单提交时页面刷新(vanilla javascript)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36613043/