Advertisement
Guest User

Untitled

a guest
Sep 15th, 2014
184
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. window.addEventListener("load",init,false);
  2.  
  3. function init(){
  4.  
  5.     var tab = {
  6.         "name" : ['required','email'],
  7.         "prenom" : ['required',6]
  8.     }
  9.  
  10.     $('myForm').addEventListener("submit",goValider,false);
  11.     $('myForm').reset();
  12.  
  13.     function goValider(e){
  14.         e.preventDefault();
  15.         valider(tab);
  16.     }
  17.  
  18.     function valider(tab) {
  19.         var cle, input, valeur, i=0,j,k,h;
  20.         var invalide = new Array();
  21.  
  22.         for( cle in tab ) {
  23.             input = $(cle);
  24.             valeur = input.value;
  25.  
  26.             for( k = 0; k < tab[cle].length; k++){
  27.                 switch(tab[cle][k]) {
  28.                     case "required" :
  29.                         valide = isNotEmpty(valeur);
  30.                         break;
  31.                     case  "email" :
  32.                         valide = isMail(valeur);
  33.                         break;
  34.                     default :
  35.                         valide = limit(valeur,tab[cle][k]);
  36.                         break;
  37.                 }
  38.  
  39.                 if(!invalide.inArray(cle)){
  40.                     if(!valide){
  41.                         invalide[i] = cle;
  42.                         i++;
  43.                     }
  44.                 }
  45.             }
  46.         }
  47.  
  48.         if( invalide.length == 0 ) {
  49.             alert("pas d'erreur on envoie les données");
  50.         }else{
  51.             for( j = 0; j < invalide.length; j++ ){
  52.                 $(invalide[j]).className = "error";
  53.             }
  54.             document.querySelector('.error').focus();
  55.         }
  56.  
  57.     }
  58.  
  59. }
  60.  
  61. function $(id) {
  62.     return document.getElementById(id);
  63. }
  64.  
  65. function isNotEmpty(valeur) {
  66.     return (valeur != "") ? true : false;
  67. }
  68.  
  69. function limit(valeur,limit){
  70.     return (valeur.length >= limit) ? true : false;
  71. }
  72.  
  73. Array.prototype.inArray = function (value) {
  74.     var i;
  75.     for (i=0; i < this.length; i++) {
  76.         if (this[i] == value) {
  77.             return true;
  78.         }
  79.     }
  80. }
  81.  
  82. function isMail(valeur) {
  83.     var regMail = new RegExp("^[0-9a-z._-]+@{1}[0-9a-z._-]{2,}[.]{1}[a-z]{2,5}$","i");
  84.     return regMail.test(valeur);
  85. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement