我正在尝试使用 JavaScript 验证我的表单。我希望如果用户将输入字段留空,那么他会看到一条警报,并且表单不会将数据提交到 php 文件。不幸的是,下面的代码对我不起作用。 javascript 未在表单提交时执行。
javascript
<script>
function MyForm() {
var x =document.forms["myForm"]["name"].value;
if (x == null || x == "") {alert("Name must be filled out");
return false;
}
{ var y=document.forms["myForm"]["age"].value;
if (y == null || y == "") {
alert("age must be filled out");
return false;
}
}
表单
<form name="myForm"action="game.php"onsubmit="return myForm()"method="post">
Name: <input type="text" name="name">
Age: <input type="text" name="age">
<input type="submit" value="Submit">
</form>
非常感谢任何帮助。
最佳答案
您的代码中有几个拼写错误。找到它们的一个好方法是使用浏览器开发人员工具中的控制台(尝试按 F12)。
改变
{ var y=document.forms["myForm"]["age"].value;
至
var y=document.forms["myForm"]["age"].value; //removed the opening curly brace
并在您的表单中进行更改:
onsubmit="return myForm()"
至
onsubmit="return MyForm()"
关于Javascript 表单验证不适用于 2 个输入字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30544041/