Mon code jquery ne fonctionne pas

geekat Messages postés 228 Date d'inscription   Statut Membre Dernière intervention   -  
geekat Messages postés 228 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
J'ai un champ téléphone et je souhaite lui appliquer un seul contrôle, que les valeurs entrées soient des chiffres (digits), si ce n'est pas le cas j'affiche une erreur. Mais voilà ça marche sur une page et pas sur une autre, je ne vois pas pourquoi, je ne vois pas où peut être l'erreur.
Voici la partie qui ne marche pas :
$(function()
   {
      // Validation
	$("#sky-form").validate(
	    {					
		// Règles de validation
		rules:
		{
		tel_m:
		{
		required: false,
		digits: true
		},
	     },
										
             // Messages pour validation
	     messages:
	     {
		tel_m:
		{	required: 'Saisissez un numéro de téléphone',
			digits: 'Entrez seulement des chiffres'
		},
	},
										
	      // Ajax form submition					
		submitHandler: function(form)
		{
		$(form).ajaxSubmit(
		     {
			beforeSend: function()
				{
				$('#sky-form button[type="submit"]').attr('disabled', true);
				},
				success: function()
				{
				$("#sky-form").addClass('submited');
			         }
		});
	},
					
		// Do not change code below
		errorPlacement: function(error, element)
		{
			error.insertAfter(element.parent());
		}
	});	
});				
A voir également:

2 réponses

nichola Messages postés 111 Date d'inscription   Statut Membre Dernière intervention   11
 
Salut,

Tu as une erreur ou rien dutout ? Si c'est rien dutout ya des chances que ton formulaire ne porte pas le bon identifiant ...
0
geekat Messages postés 228 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,
Merci pour ta réponse. Je n'ai aucune erreur, j'ai vérifié mes identifiants il correspondent bien. Je ne sais pas si je l'ai mal placé car j'ai un code plus haut en javascript.
0
geekat Messages postés 228 Date d'inscription   Statut Membre Dernière intervention   > geekat Messages postés 228 Date d'inscription   Statut Membre Dernière intervention  
 
Je vois ce qui pose problème, c'est une <div>, mais j'ai besoin de cette <div>. Je ne sais pas comment régler le problème :(
0
geekat Messages postés 228 Date d'inscription   Statut Membre Dernière intervention  
 
Code JS complet :
countForms = 0;
createForms = function(){
    countForms++;
    newForm = $( "#templateForms" ).clone().appendTo( "#content" );
    newForm.show();
    newForm.attr('id', 'form' + '_' + countForms);
    
 nom = newForm.find("[name=nom]");
 prenom = newForm.find("[name=prenom]");
 fonction = newForm.find("[name=fonction]");
 tel_m = newForm.find("[name=tel_m]");
 tel_d = newForm.find("[name=tel_d]");
 tel_p = newForm.find("[name=tel_p]");
 mail = newForm.find("[name=mail]");
 fax = newForm.find("[name=fax]");
 desc = newForm.find("[name=desc]");
 
 nom.attr('name', nom.attr('name') + '_' + countForms);
 prenom.attr('name', prenom.attr('name') + '_' + countForms);
 fonction.attr('name', fonction.attr('name') + '_' + countForms);
 tel_m.attr('name', tel_m.attr('name') + '_' + countForms);
 tel_d.attr('name', tel_d.attr('name') + '_' + countForms);
 tel_p.attr('name', tel_p.attr('name') + '_' + countForms);
 mail.attr('name', mail.attr('name') + '_' + countForms);
 fax.attr('name', fax.attr('name') + '_' + countForms);
 desc.attr('name', desc.attr('name') + '_' + countForms);
    
    $('#countForms').val(countForms);
 
 /***Le mask**/
 //tel_m.mask('(33) 9-99-99-99-99', {placeholder:'X'});
 //tel_d.mask('(33) 9-99-99-99-99', {placeholder:'X'});
 //tel_p.mask('(33) 9-99-99-99-99', {placeholder:'X'});
 //fax.mask('(33) 9-99-99-99-99', {placeholder:'X'});
}


$("#createForms").on("click", function(){
    createForms();
});

// décomentez ces lignes pour créer automatiquement un(des) formulaire(s) au début
createForms();
//createForms();
//createForms();
//createForms();

   
 tel_d.mask('(33) 9-99-99-99-99', {placeholder:'X'});   
 // Message Mail en français !!!!!!!!!!
 jQuery.extend(jQuery.validator.messages, {
  email: "Veuillez entrer une adresse mail valide!",
 }); 
$(function()
   {
      // Validation
 $("#sky-form").validate(
     {     
  // Règles de validation
  rules:
  {
  tel_m:
  {
  required: false,
  digits: true
  },
      },
          
             // Messages pour validation
      messages:
      {
  tel_m:
  { required: 'Saisissez un numéro de téléphone',
   digits: 'Entrez seulement des chiffres'
  },
 },
          
       // Ajax form submition     
  submitHandler: function(form)
  {
  $(form).ajaxSubmit(
       {
   beforeSend: function()
    {
    $('#sky-form button[type="submit"]').attr('disabled', true);
    },
    success: function()
    {
    $("#sky-form").addClass('submited');
            }
  });
 },
     
  // Do not change code below
  errorPlacement: function(error, element)
  {
   error.insertAfter(element.parent());
  }
 }); 
});    
0