7

有问题。这是我的代码:

<html>

<body>
<form>
<p>13-7: <input id="in1" type="text"" /><input type="submit" onclick="check(6, 'in1', 'out1')" value="Tjek!"/></p>
<p id="out1"></p>
<p>20-7: <input id="in2" type="text"" /><input type="submit" onclick="check(13, 'in2', 'out2')" value="Tjek!" /></p>
<p id="out2"></p>



<script type="text/javascript">

function check(facit, input, output) {
    var answer, evaluation;
    answer = document.getElementById(input).value;
    evaluation = (answer == facit) ? "Correct" : "Wrong";
    document.getElementById(output).innerHTML = evaluation;
    return false;
}

</script>
</form>
</body>

</html>

当我单击提交按钮时,“正确/错误”仅显示片刻。我希望它留在网站上,有什么建议吗?

4

5 回答 5

16

提交按钮正在提交您的表单(因此重新加载您的页面)。

将按钮更改为type="button"

于 2012-07-01T20:35:09.450 回答
2

您的按钮是提交按钮 ( <input type="submit">),因此它们将提交表单并在每次单击时刷新页面。将您的按钮<input type="button">改为。

于 2012-07-01T20:34:47.777 回答
2

将 onclick 函数从:

onclick="check(13, 'in2', 'out2')"

到:

onclick="return check(13, 'in2', 'out2')"

或者,如果您不想提交表单,因为您有两个提交按钮,最好使用:

<input type="button" />
于 2012-07-01T20:34:59.450 回答
1

只需从此更改 onclick

onclick="check(6, 'in1', 'out1')"

onclick="check(6, 'in1', 'out1'); return false;"

对另一个也做同样的事情。

去掉return false;check功能。

参考现场演示

于 2012-07-01T20:47:59.993 回答
0

表单正在提交并与原始页面一起返回。

你想让我做什么?

I dont want it returned with the original page .. I want it to say 'correct' og 'wrong' below the input 

如果您不想提交数据,请按照 minitech 的建议进行操作,将类型从提交更改为按钮。

如果要保存数据,则需要编写服务器端代码,然后创建填充了这些值的 html(在服务器端。)

于 2012-07-01T20:35:00.667 回答