繁体   English   中英

javascript 在提交时不起作用

[英]javascript not working onsubmit

我正在学习 JavaScript,这是我创建的第一个 JavaScript 函数,但它不起作用,我无法找出这段代码中的问题:

<form method="post" name="answerForm" onsubmit="checkAnswer(document.answerForm.guessAnswer.value);">
    <input type="text" name="guessAnswer" id="guessAnswer">
    <input type="submit" name="submit">
</form>

<script type="text/javascript">

    var rightAnswer = 12;

    function checkAnswer(guessAnswer) {
        if (guessAnswer == rightAnswer) {
            alert("You are right.");
        }
        else if (guessAnswer > rightAnswer) {
            alert("You went too far.");
        }
        else if (guessAnswer < rightAnswer) {
            alert("You're not even close to it.");
        }
        else () {
            alert("I don't know what you talking about.");
        }
    }

</script>

在您的函数中,您在 else 中放置了错误的空括号。 因为其他不需要它。 请检查以下工作片段。

 var rightAnswer = 12; function checkAnswer(guessAnswer) { if (guessAnswer == rightAnswer) { alert("You are right."); } else if (guessAnswer > rightAnswer) { alert("You went too far."); } else if (guessAnswer < rightAnswer) { alert("You're not even close to it."); } else { alert("I don't know what you talking about."); } }
 <form method="post" name="answerForm" onsubmit="checkAnswer(document.answerForm.guessAnswer.value);"> <input type="text" name="guessAnswer" id="guessAnswer"> <input type="submit" name="submit"> </form>

我可以看到您不想提交表单,因为表单标签中没有action属性,您只想将答案告知用户。

您应该使用onclick事件而不是提交然后您也不需要表单。

只是

`<input type="button" name="submit" onclick="checkAnswer(document.answerForm.guessAnswer.value);">`

会做这份工作

在最后一个else删除括号后,我让你的代码运行良好

else {
            alert("I don't know what you talking about.");
        }

在这里查看演示

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM