1+ const submitBtn = document . getElementById ( 'submitBtn' ) ;
2+ const nameError = document . getElementById ( 'nameError' ) ;
3+ const emailError = document . getElementById ( 'emailError' ) ;
4+ const passError = document . getElementById ( 'passError' ) ;
5+
6+ submitBtn . addEventListener ( 'click' , ( e ) => {
7+ e . preventDefault ( ) ;
8+
9+ if ( validateName ( ) && validateEmail ( ) && validatePassword ( ) ) {
10+ alert ( "Form Submitted Successfully" ) ;
11+ }
12+ } ) ;
13+
14+
15+ function validateName ( ) {
16+ let name = document . getElementById ( 'name' ) . value ;
17+
18+ if ( name . length == 0 ) {
19+ nameError . innerHTML = "Name is required" ;
20+ nameError . previousElementSibling . classList . add ( 'fa-xmark' ) ;
21+ return false ;
22+ }
23+
24+ if ( ! name . match ( / ^ [ A - Z a - z ] * \s { 1 } [ A - Z a - z ] * $ / ) ) {
25+ nameError . innerHTML = "Write full Name" ;
26+ nameError . previousElementSibling . classList . add ( 'fa-xmark' ) ;
27+ return false ;
28+ }
29+ nameError . innerHTML = "" ;
30+ nameError . previousElementSibling . classList . add ( 'fa-check' ) ;
31+ return true ;
32+ }
33+
34+ function validateEmail ( ) {
35+ let email = document . getElementById ( 'email' ) . value ;
36+
37+ if ( email . length == 0 ) {
38+ emailError . innerHTML = "Email is required" ;
39+ emailError . previousElementSibling . classList . add ( 'fa-xmark' ) ;
40+ return false ;
41+ }
42+
43+ if ( ! email . match ( / ^ \w + ( [ \. - ] ? \w + ) * @ \w + ( [ \. - ] ? \w + ) * ( \. \w { 2 , 3 } ) + $ / ) ) {
44+ emailError . innerHTML = "Enter Valid Email" ;
45+ emailError . previousElementSibling . classList . add ( 'fa-xmark' ) ;
46+ return false ;
47+ }
48+ emailError . innerHTML = "" ;
49+ emailError . previousElementSibling . classList . add ( 'fa-check' ) ;
50+ return true ;
51+ }
52+ function validatePassword ( ) {
53+ let password = document . getElementById ( 'password' ) . value ;
54+
55+ if ( password . length == 0 ) {
56+ passError . innerHTML = "Password is required" ;
57+ passError . previousElementSibling . classList . add ( 'fa-xmark' ) ;
58+ return false ;
59+ }
60+
61+ if ( ! password . match ( / ^ (? = .* \d ) (? = .* [ a - z ] ) (? = .* [ A - Z ] ) (? = .* [ ^ a - z A - Z 0 - 9 ] ) (? ! .* \s ) .{ 8 , 30 } $ / ) ) {
62+ passError . innerHTML = "Password should contain 1 Uppercase, 1 Lowecase, 1 Digit & 1 Alphabet" ;
63+ passError . previousElementSibling . classList . add ( 'fa-xmark' ) ;
64+ return false ;
65+ }
66+ passError . innerHTML = "" ;
67+ passError . previousElementSibling . classList . add ( 'fa-check' ) ;
68+ return true ;
69+ }
70+
71+ // Make a validateConfirmPassword function to validate it
0 commit comments