Created
October 21, 2016 07:15
-
-
Save Nikola-Andreev/618319b5b7be860169dd51cd1e8e280a to your computer and use it in GitHub Desktop.
05. Form validator
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function result() { | |
let company = false | |
$('#company').click(function() { | |
if( $(this).is(':checked')) { | |
$('#companyInfo').css('display', 'block') | |
company=true | |
} else { | |
$('#companyInfo').css('display', 'none') | |
company=false | |
} | |
}) | |
let submit = $('#submit') | |
submit.on('click', function (event) { | |
let user =false | |
let pass = false | |
let email = false | |
let comp = false | |
let userNameField = $('#username') | |
let userNameValue = userNameField.val() | |
let userNameRegex = /^[a-zA-Z0-9]{3,20}$/ | |
let test = userNameRegex.test(userNameValue) | |
if(test){ | |
$(userNameField).css('border','none') | |
user = true | |
} else{ | |
$(userNameField).css('border','2px inset') | |
$(userNameField).css('border-color','red') | |
user = false | |
} | |
let passField = $('#password') | |
let passValue = passField.val() | |
let passRegex = /^[a-zA-Z0-9_]{5,15}$/ | |
let test1 = passRegex.test(passValue) | |
let confPassField = $('#confirm-password') | |
let confPassValue = confPassField.val() | |
if(test1 && passValue == confPassValue){ | |
$(passField).css('border','none') | |
$(confPassField).css('border','none') | |
pass = true | |
} else{ | |
$(passField).css('border','2px inset') | |
$(passField).css('border-color','red') | |
$(confPassField).css('border','2px inset') | |
$(confPassField).css('border-color','red') | |
pass = false | |
} | |
let emailField = $('#email') | |
let emailValue = emailField.val() | |
let emailRegex = /@[\s\S]+?\./ | |
let test2 =emailRegex.test(emailValue) | |
if(test2){ | |
$(emailField).css('border','none') | |
email = true | |
} else{ | |
$(emailField).css('border','2px inset') | |
$(emailField).css('border-color','red') | |
email = false | |
} | |
if(company){ | |
let companyField = $('#companyNumber') | |
let companyValue = Number(companyField.val()) | |
if(companyValue>= 1000 && companyValue <= 9999){ | |
$(companyField).css('border','none') | |
comp = true | |
} else{ | |
$(companyField).css('border','2px inset') | |
$(companyField).css('border-color','red') | |
comp = false | |
} | |
if(user && pass && email && comp){ | |
$('#valid').css('display','block') | |
} else{ | |
$('#valid').css('display','none') | |
} | |
} else{ | |
if(user && pass && email){ | |
$('#valid').css('display','block') | |
} else{ | |
$('#valid').css('display','none') | |
} | |
} | |
event.preventDefault() | |
}) | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment