Html return 添加 return false 后无效

Html return did not work after I added the return false

我想将 usernameemail 提交到一个名为 welcome.php 的文件,它曾经有效,但是在将 return false 添加到防止在注册时出现一些问题,即使它满足了我设置的所有要求,它也没有进入 php 文件!

<html>

<head>
    <script>
        function myFunction() {
            var passw_1 = document.myform.password1.value;
            var passw_2 = document.myform.password2.value;
            if (passw_1 != passw_2) {
                alert("You didn't enter the same password.");
                event.preventDefault();
            }
            var sletter = document.myform.email.value;
            var reg = new RegExp(/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0- 
                9 _ - ] {
                2,
                3
            }) {
            1,
            2
        }) $ / );
        test_email = reg.test(sletter);
        if (test_email != true) {
            alert("not correct form of email !");
            event.preventDefault();
        }
        if (document.myform.password1.value == "") alert("The password should 
            not be empty.
            ");
            event.preventDefault();
        }
    </script>
</head>

<body>
    <form name="myform" action="welcome.php" method="post" name="register">
        <p>First name: <input type="text" name="fname" /></p>
        <p>Last name: <input type="text" name="lname" /></p>
        <p>password: <input name="password1" id="pswl1" type="text" /></p>
        <p>confirm your password: <input name="password2" id="pswl2" type="text" />
        </p>
        <p>email: <input type="text" name="email" /></p>
        <input type="radio" name="gender" value="male">male
        <input type="radio" name="gender" value="female">female
        <input type="radio" name="gender" value="other">other
        <br/> Music
        <input type="checkbox" name="Hobby" value="music" onclick="chose(this)" /> Theater
        <input type="checkbox" onclick="chose(this)" name="Hobby" value="theater" />
        <br/> Sports
        <input type="checkbox" onclick="chose(this)" name="Hobby" value="sports" /> Dancing
        <input type="checkbox" onclick="chose(this)" name="Hobby" value="dancing" />
        <p> </p>
        <input type="submit" value="Submit" onclick="return myFunction()" />
    </form>
</body>

</html>

您在使用 event.preventDefault(); 时遇到问题,因为 event 从未在您的脚本中定义。而不是尝试 return false

<script>
    function myFunction() {
        var passw_1 = document.myform.password1.value;
        var passw_2 = document.myform.password2.value;
        if (passw_1 != passw_2) {
            alert("You didn't enter the same password.");
            return false; //event.preventDefault();
        }
        var sletter = document.myform.email.value;
        var reg = new RegExp(/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0- 
            9 _ - ] {
            2,
            3
        }) {
        1,
        2
    }) $ / );
    test_email = reg.test(sletter);
    if (test_email != true) {
        alert("not correct form of email !");
        return false; //event.preventDefault();
    }
    if (document.myform.password1.value == "") alert("The password should 
        not be empty.
        ");
        return false; //event.preventDefault();
    }
</script>

谢谢大家

我已经解决了!!!

<html>
<head>
<script>
function myFunction()
{
var passw_1 = document.myform.password1.value;
var passw_2 = document.myform.password2.value;
var sletter =document.myform.email.value; 
var reg =new RegExp( /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/);
test_email=reg.test(sletter);

if(passw_1 != passw_2){ 
alert("You didn't enter the same password.");
return false ; 
}
else if(test_email!=true) {  
alert("not correct form of email !"); 
return false; 
}
else if(document.myform.password1.value =="") {
alert("The password should not be empty.");
return false; 
}
else{return true;}
}
</script>
</head>
<body>
<form name="myform" action="welcome.php" method="post" name="register" onSubmit ="return myFunction()">
<p>First name: <input type="text" name="fname" /></p>
<p>Last name: <input type="text" name="lname" /></p>
<p>password: <input  name="password1" id="pswl1"  type="text"  /></p>
<p>confirm your password: <input name="password2" id="pswl2" type="text"  />
</p>
<p>email: <input type="text" name="email" /></p>
<input type="radio" name="gender" value="male">male
<input type="radio" name="gender" value="female">female
<input type="radio" name="gender" value="other" >other
<br/>  
Music<input type="checkbox" name="Hobby" value="music" 
onclick="chose(this)" />         
Theater<input type="checkbox" onclick="chose(this)" name="Hobby" 
value="theater"/> 
<br/>  
Sports<input type="checkbox" onclick="chose(this)" name="Hobby" value="sports"/>  
Dancing<input type="checkbox" onclick="chose(this)" name="Hobby" value="dancing"/>  
<p> </p> 
<input type="submit" value="Submit" />
</form>
</body>
</html>