Javascript函数检查用户名和密码字段,如果未完成,则相应停止

Javascript函数检查用户名和密码字段,如果未完成,则相应停止,javascript,php,submit,registration,Javascript,Php,Submit,Registration,我刚刚开始学习PHP,我的老师建议我使用JS检查输入字段中是否有编码lentgh。 如果字段与规格匹配,则继续注册 如果RegistrationValidation()返回false,如何停止php运行 提交按钮 <input type="button" name="Register" value="Register" onclick="RegistrationValidation()"> 注册新用户 <?php if (isset($_POST['Registe

我刚刚开始学习PHP,我的老师建议我使用JS检查输入字段中是否有编码lentgh。 如果字段与规格匹配,则继续注册
如果RegistrationValidation()返回false,如何停止php运行

提交按钮

<input type="button" name="Register" value="Register"     onclick="RegistrationValidation()">

注册新用户

<?php
if (isset($_POST['Register'])) {
include 'SQL.php';
$username = $_POST['username'];
$password = $_POST['password'];
NewUser($username, $password);
} else
echo '';
?>

Javascript函数

function RegistrationValidation() {
var username = document.getElementById('username');
var password = document.getElementById('password');
var usererror = document.getElementById('usererror');
var passerror = document.getElementById('passerror');
var registration = document.getElementById('registrationCheck');
var username_check = true;
var password_check = true;

if (username.value.length < 6) {
    var username_check = false;
    usererror.innerHTML = 'Username must have at least 6 characters.';
} else {
    usererror.innerHTML = '';

}


if (password.value.length < 6) {
    var password_check = false;
    passerror.innerHTML = 'Password must have at least 6 characters.';
} else {
    passerror.innerHTML = '';

}

if (username_check == true && password_check == true) {
    document.getElementById("myForm").submit();
} else {
    return false;
    registration.innerHTML = 'Retype username and password';
}
}

//
函数注册验证(){
var username=document.getElementById('username');
var password=document.getElementById('password');
var usererror=document.getElementById('usererror');
var passeror=document.getElementById('passeror');
var registration=document.getElementById('registrationCheck');
var username\u check=true;
var password_check=true;
如果(username.value.length<6){
var username\u check=false;
usererror.innerHTML='用户名必须至少包含6个字符';
}否则{
usererror.innerHTML='';
}
if(password.value.length<6){
var password_check=false;
passerror.innerHTML='密码必须至少包含6个字符';
}否则{
passeror.innerHTML='';
}
如果(用户名检查==true&&password检查==true){
document.getElementById(“myForm”).submit();
}否则{
返回false;
registration.innerHTML='重新键入用户名和密码';
}
}
//

如果验证失败,则函数返回false。因此,您可以简单地将函数用作处理程序,将
onsubmit
处理程序添加到表单中

// put this before the close </body> tag or wrap it in window.onload = function(){ }
document.getElementById("yourform").onsubmit = RegistrationValidation;
//将其放在close标记之前,或将其包装在window.onload=function(){}
document.getElementById(“yourform”).onsubmit=RegistrationValidation;
这比在按钮上使用单击事件要好,因为
onsubmit
处理其他情况,例如通过enter键提交表单


请记住,您仍然需要在PHP端执行相同的验证,因为JavaScript验证很容易绕过。

如果我理解正确,onsubmit处理程序应该是这样的:
code
code
?这是使用内联事件,因此您需要更改为
(我添加了
返回
)。答案中的代码是不引人注目的JavaScript(没有内联JS)。两种方法都工作得很好,感谢您的耐心和洞察力。