0

I am facing issue with javascript for form validation. On one of the forms the javascript function is working properly, and when on other form, i am trying to do form validation, but the script does not fire up.. i have tried many times to clear my browser cache and refreshed the page but i am not getting any results. I would be thankful if anyone reviews it and help spot the issue. The following is the function that works on my homepage:

 <script>
  function validate()
{
    var uid = document.getElementById("usrname").value;
    var pwd = document.getElementById("passwd").value;
    if (uid == "" || pwd == "") {
    alert("Empty fields not allowed");
        return false;
    }
    else if (uid.length < 4 || uid.length > 20) {
            alert("User ID string length should be between 4 - 20");
            return false;
        }
    else if (pwd.length < 6 || pwd.length >20) {
            alert("Password length should be between 6 - 20");
            return false;
        }
        return true;
}

  </script>
<form name="ulogin" action="login.php" method="post" onSubmit="return validate();">

The following validation code on the other page does not run:

<script>
  function regval()
    {
     var cname = document.getElementById("name1").value;
     var email = document.getElementById("email").value;
     var phn = document.getElementById("phone").value;
     var addr1 = document.getElementById("addr1").value;
     var addr2 = document.getElementById("addr2").value;
     var city = document.getElementById("city").value;
     var state = document.getElementById("state").value;
     var country = document.getElementById("country").value;
     var uname = document.getElementById("uname").value;
     var pwd = document.getElementById("passwd").value;
     var cnfp = document.getElementById("cnf_passwd").value;
     var secans = document.getElementById("sec_ans").value;
     var regex=/^[0-9]+$/;
     var alphanum=/^[a-z0-9]+$/i;

    if(cname == "" || email == "" || phn == "" || addr1 == "" || addr2 == "" || city == "" || state == "" || state == "" || country == "" || uname == "" || pwd == "" || cnfp == ""|| secans == "") {
         alert("Empty fields not allowed");
         return false;
         } 
    if (cname.length < 3 || cname.length > 20) {
        alert("Name length should be between 4-20 characters.");
        return false;
        } 
    if (email.length < 10 || email.length > 50 ) {
        alert("email length should be between 10-50 characters.");
        return false;
        } 
    if (phn.length < 7 || phn.length > 11 ) {
        alert("check phone number length.");
        return false;
        } 
        else if (!phn.match(regex)) {
         alert("Please check inputs, only numbers are allowed.!");
         return false;
        }

    if (city.toLowerCase() != "surat" || state.toLowerCase() != "gujarat" || country.toLowerCase() != "india") {
        alert("Sorry, we only serve in surat currently at the moment..!!");
        return false;
        } 
    if (uname.length < 4 || uname.length > 20) {
        alert("user name should be between 4 - 20 characters.");
        return false;
        } 
        else if (!uname.match(alphanum)) {
           alert("only characters A-z 0-9 are allowed.");
           return false
        }

    if (pwd.length < 6 || pwd.length > 30) {
        alert("password length should be between 6 - 30 characters.");
        return false;
        } 
        else if (!pwd.match(alphanum) {
          alert("Only characters A-z 0-9 are allowed.");
          return false;
        } 

    if (pwd != cnfp) {
        alert("the passwords do not match, please check and try again.");
        return false;
        }

    if (secans.length < 5 || secans.length > 20) {
        alert("please check for security answer length. It should be between 5 to 20 characters.");
        return false;
        } 
            return true;
    }
  </script>

<form name="usreg" action="signup.php" method="POST" onSubmit="return regval();">

the script tags are in the head tags of my webpage.

Thanks in advance.

3
  • Check your browser debuging tool. Commented Sep 13, 2015 at 16:00
  • I'll bet there's a console error - developer tools will show you. A breakpoint might make it clear, too. Commented Sep 13, 2015 at 16:02
  • “Missing closing bracket ) Commented Apr 12 at 7:04

1 Answer 1

2

Missing closing bracket ) Here else if (!pwd.match(alphanum) {

if (pwd.length < 6 || pwd.length > 30) {
    alert("password length should be between 6 - 30 characters.");
    return false;
    } 
    else if (!pwd.match(alphanum) {
      alert("Only characters A-z 0-9 are allowed.");
      return false;
    } 

Should be

if (pwd.length < 6 || pwd.length > 30) {
    alert("password length should be between 6 - 30 characters.");
    return false;
    } 
    else if (!pwd.match(alphanum)) {
      alert("Only characters A-z 0-9 are allowed.");
      return false;
    } 

Note: Always check browser console log for errors.

Sign up to request clarification or add additional context in comments.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.