防止在用户输入错误时重新加载页面

prevent reload page when user input is wrong

本文关键字:加载 新加载 用户 输入 错误      更新时间:2023-09-26

>我创建这样的注册页面

<form name='registration' action="registration.php" method="post" onSubmit="return formValidation();">
    FirstName:<input type = "Text" name = "firstname">
    <input type = "submit" name = "register" value="register">
</form>

这是我的JavaScript函数

function formValidation() {  
   var fn = document.registration.firstname;
   if ( fname_validation( fn ) ) {}
}
function fname_validation( fn ) {
   var fn_len = fn.value.length;
   var fn_char = /^[A-Za-z]+$/;
   if ( fn_len == 0 ) {
       alert("first name cannot empty");
       return false;
   }
   if ( !fn.value.match( fn_char ) ) {
       alert("first name must enter alphabet only");
       return false;
   } else {
       return true;
   }
}

注册表正在工作,但如果用户输入数字,它将提醒并重新加载页面,这将刷新页面。 如果我想当用户输入错误并且不刷新页面以保持用户输入时,该怎么办?

在你的 JavaScript 中,你应该返回正确的值...

例:

function formValidation() {  
   var fn = document.registration.firstname;
   return fname_validation( fn );
}

要防止表单提交,只需在 formValidation() 函数中返回 false

在表单提交中添加返回假

<form name='registration' action="registration.php" method="post" onSubmit="return formValidation();return false;">
    FirstName:<input type = "Text" name = "firstname">
    <input type = "submit" name = "register" value="register">
    </form>