Skip to content

Instantly share code, notes, and snippets.

@Nikola-Andreev
Created October 21, 2016 07:15
Show Gist options
  • Save Nikola-Andreev/618319b5b7be860169dd51cd1e8e280a to your computer and use it in GitHub Desktop.
Save Nikola-Andreev/618319b5b7be860169dd51cd1e8e280a to your computer and use it in GitHub Desktop.
05. Form validator
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