2017-09-21 4 views
0

J'ai un formulaire de construction dans WordPress avec formulaire de contact 7. J'ai mis une validation personnalisée sur le champ de texte.Comment définir le format sur un champ de texte?

$("input[name='num'").keyup(function(e){ 

     var cpf = jQuery(this).val(); 
     if(cpf){ 
      var reg = /^\(?([0-9]{3})\)?[.]?([0-9]{3})[.]?([0-9]{3})[-]?([0-9]{2})$/; 
      if(!reg.test(cpf)) { 

       jQuery("#cpf-error").html("Format Should be (xxx.xxx.xxx-xx)"); 

      }else{ 
       jQuery("#cpf-error").empty(); 
      } 
     } 


    }); 

Avec ce format de validation du numéro sera xxx.xxx.xxx-xx Mais dans ce cas l'utilisateur à taper des points et moins (.) (-) pour obtenir son validate numéro. Je veux que l'utilisateur taper seulement comme ceci 12345678900 et il a converti automatiquement comme ceci 123.456.789-00 dans le champ de texte.

Y a-t-il une solution?

Merci à l'avance

+0

match doit entrer exactement 11 caractères numériques? –

Répondre

0

Essayez cette

document.getElementById("inputId").onkeyup = function(){ 
 
    this.value = this.value.replace(/^(\d{3})(\d{3})(\d{3})(\d{2}).*/, '$1.$2.$3-$4'); 
 
};
<input type='text' id='inputId' />

Vous pouvez également essayer d'utiliser le PCF masque du jQuery Mask

+0

Cela ne fonctionne pas :( – Haider

+0

Haider, j'ai mis à jour la réponse.Vous devez entrer tous les 11 chiffres afin d'appliquer le masque au nombre.Espérons que cela aide –

+0

Merci. – Haider