我有一个表单(我使用 bootstrap),有 3 个数字输入,我用这些数字进行数学运算,这是我的代码
function abc() {
var a = document.getElementById("a").value;
var b = document.getElementById("b").value;
var c = document.getElementById("c").value;
var d = Math.pow((b), 2) - (4 * a * c);
var x1 = (-b-(Math.sqrt(d))) / (2 * a);
var x2 = (-b+(Math.sqrt(d))) / (2 * a);
document.write(d);
}
<div class="row"><!-- Row -->
<div class="col-md-4"><!-- Rij links -->
<form onsubmit="abc()" role="form">
<div class="form-group">
<label for="a">Vul hier a in:</label>
<input type="number" class="form-control" id="a" placeholder="Ax2 + bx + c" >
</div>
<div class="form-group">
<label for="b">Vul hier b in:</label>
<input type="number" class="form-control" id="b" placeholder="ax2 + Bx + c" >
</div>
<div class="form-group">
<label for="c">Vul hier c in:</label>
<input type="number" class="form-control" id="c" placeholder="ax2 + bx + C" >
</div>
<button type="submit" class="btn btn-default btn-block">Ga!</button>
</form>
</div><!-- Einde Rij links -->
<div class="col-md-4"><!-- Rij rechts -->
<p>Je antwoord komt hieronder:</p>
<p id="antwoord"></p>
</div><!-- Einde Rij rechts -->
<div class="col-md-4">
</div>
</div><!-- Einde Row -->
我的 JavaScript 就在结束正文标记之前。
起初代码可以工作,但突然就停止工作了。它什么也没做
最佳答案
onsubmit 函数不会阻止页面将请求发送回服务器。最佳实践是在 abc 函数末尾返回 false:
function abc() {
var a = document.getElementById("a").value;
var b = document.getElementById("b").value;
var c = document.getElementById("c").value;
var d = Math.pow((b), 2) - (4 * a * c);
var x1 = (-b-(Math.sqrt(d))) / (2 * a);
var x2 = (-b+(Math.sqrt(d))) / (2 * a);
document.write(d);
return false;
}
您还应该按如下方式更新 onsubmit:
<form onsubmit="return abc()" role="form">
希望有帮助!
关于javascript - 为什么我的 javascript 表单不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30105709/