繁体   English   中英

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

[英]prevent reload page when user input is wrong

我创建这样的注册页面

<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 );
}

在表单提交中添加return 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>

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

暂无
暂无

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

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