Advertisement
Guest User

FormValidation

a guest
Jun 26th, 2017
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function validate() {
  2.     let submitBtn = $('#submit');
  3.     let checkboxBtn = $('#company');
  4.     let password = $('#password');
  5.     let confirmPassword = $('#confirm-password');
  6.     let username = $('#username');
  7.     let email = $('#email');
  8.     let companyInfo = $('#companyInfo');
  9.     let validContainer = $('#valid');
  10.     let allIsValid = true;
  11.     let submitClicked = false;
  12.     checkboxBtn.on("change", () =>
  13.         companyInfo.css("display", checkboxBtn.is(':checked') ? 'block' : 'none'));
  14.  
  15.     // Prevent page from reloading
  16.     submitBtn.on('click', function (ev) {
  17.         ev.preventDefault();
  18.         allIsValid = true;
  19.         validateForm();
  20.         validContainer.css("display", allIsValid ? "block" : "none");
  21.     });
  22.  
  23.     function validateForm() {
  24.         validateInput(username, /^[A-Za-z\d]{3,20}$/g);
  25.         validateInput(email, /^.+?\@(.*?\.)(.*)$/g);
  26.         if (password.val() === confirmPassword.val()
  27.             && password.val() !== '' && confirmPassword.val() !== '') {
  28.             validateInput(password, /^\w{5,15}$/g);
  29.             validateInput(confirmPassword, /^\w{5,15}$/g);
  30.         } else {
  31.             password.removeAttr("style");
  32.             confirmPassword.removeAttr("style");
  33.             password.css("border-color", "red");
  34.             confirmPassword.css("border-color", "red");
  35.             allIsValid = false;
  36.         }
  37.  
  38.         if (checkboxBtn.is(':checked')) {
  39.             validateCompanyInfo();
  40.         }
  41.     }
  42.  
  43.     function validateCompanyInfo() {
  44.         let companyNumContainer = $('#companyNumber');
  45.         companyNumContainer.removeAttr("style");
  46.         let companyNum = Number(companyNumContainer.val());
  47.         if (companyNum >= 1000 && companyNum <= 9999) {
  48.             companyNumContainer.css("border", "none");
  49.         } else {
  50.             companyNumContainer.css("border-color", "red");
  51.             allIsValid = false;
  52.         }
  53.     }
  54.  
  55.     function validateInput(input, pattern) {
  56.         input.removeAttr("style");
  57.         if (!pattern.test(input.val())) {
  58.             input.css("border-color", "red");
  59.             allIsValid = false;
  60.         } else {
  61.             input.css("border", "none");
  62.         }
  63.     }
  64. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement