user3120015
user3120015

Reputation: 181

Validating using JavaScript - how to show to all validation error message's

I have function that checks if fields are blank but if all fields are blank it only shows one of the validation message's, I think this is because I have used an if statement:

          function validateForm()
        {
         var sName=document.forms["myForm"]["surname_5"].value;
         if (sName==null || sName=="")
       {
           document.getElementById("sNameMessage").innerHTML = "*Surname is required";
           return false;
       }
          var x=document.forms["myForm"]["firstname_4"].value;
           if (x==null || x=="")
        {
          document.getElementById("fNameMessage").innerHTML = "*First name is required";
          return false;
        }
       var y=document.forms["myForm"]["selectid"];
         if(y.options[y.selectedIndex].value == "Title")
       {
      document.getElementById("titleMessage").innerHTML = "You need to select a title";
      return false;
      }


      } 

How do I get it so all validation messages show if the user has left all fields blank?

Upvotes: 0

Views: 87

Answers (2)

jmoyson
jmoyson

Reputation: 146

Try something like this (or add all your code if you need more details)

JavaScript:

function validateForm() {
    var sName = document.forms["myForm"]["surname_5"].value;
    var ret = true;
    if (sName == null || sName == "") {
        document.getElementById("sNameMessage").innerHTML = "*Surname is required";
        ret = false;
     }
     var x = document.forms["myForm"]["firstname_4"].value;
     if (x == null || x == "") {
         document.getElementById("fNameMessage").innerHTML = "*First name is required";
         ret = false;
     }
     var y = document.forms["myForm"]["selectid"];
     if (y.options[y.selectedIndex].value == "Title") {
         document.getElementById("titleMessage").innerHTML = "You need to select a title";
         ret = false;
     }
     return ret;
}

Upvotes: 0

Quentin
Quentin

Reputation: 943561

Don't return false immediately. Set a variable to false (after defining it as true at the very start of the function) and return that variable at the end.

Upvotes: 3

Related Questions