IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

TypeError: chaine is undefined


Sujet :

JavaScript

  1. #1
    Membre actif Avatar de aljessy
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2010
    Messages
    319
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2010
    Messages : 319
    Points : 200
    Points
    200
    Par défaut TypeError: chaine is undefined
    Bonjour ça fait déjà quelques jours que j'essaie de corrigé cette erreur mais j'y arrive pas. Je connais la ligne qui retourne l'erreur mais je ne sais pas ce qui génère cette erreur.

    Voici le code source:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    function formValidate() {
            // Tableau des champs requis pour la validation 
            var tabField		= new Array('Rb_Civilite', 'Tb_Nom', 'Tb_Prenom', 'Ld_JourNaiss', 'Ld_MoisNaiss', 'Ld_AnneeNaiss', 'Tb_Origine', 'Ld_Pays', 'Tb_Nationalite', 'Tb_AdrMail', 'Tb_Cni', 'Tb_TelPortable');
            var regEmail 		= new RegExp("^[a-zA-Z0-9_\\-\\.]{3,}@[a-zA-Z0-9\\-_]{2,}\\.[a-zA-Z]{2,4}$", "g"); 
            var formId              = 'stepForm_1';
            var divError		= 'fdb-Zone';
            var classFieldError     = 'field-error';
            var classMsgError  	= 'msg-error';
            var msgError  		= 'Les champs en surbrillance sont obligatoires';
     
            try {		
                if(!controlRequiredFields(formId, classFieldError, tabField)){
                    $('#'+divError).addClass(classMsgError)
                        .html('<span id="imgError"></span><span id="msgError">'+msgError+'</span><a href="#hautDePage"><span id="hpError"></span></a>')
                        .show();
                    return false;
                } else {
                    if(!regularExpression(regEmail, $('#Tb_AdrMail').val())) {
                        var msgRegError  = 'L&rsquo;adresse mail n&rsquo;est pas valide';
                        $('#Tb_AdrMail').addClass('field-error');
                        $('#fdb-Zone').addClass('field-error')
                            .html('<span id="imgError"></span><span id="msgError">'+msgRegError+'</span><a href="#hautDePage"><span id="hpError"></span></a>')
                            .show();
                        return false;			
                    } else {
                        $('#Tb_AdrMail').removeClass('field-error');
                        $('#fdb-Zone').removeClass('field-error').html('').hide();
                    }		
                    if(!regularExpression(regCode, $('#Tb_CodePostal').val())) {
                        var msgRegError  = 'Le code postal n&rsquo;est pas valide (ne doit pas commencer par z&eacute;ro)';
                        $('#Tb_CodePostal').addClass('field-error');
                        $('#fdb-Zone').addClass('field-error')
                            .html('<span id="imgError"></span><span id="msgError">'+msgRegError+'</span><a href="#hautDePage"><span id="hpError"></span></a>')
                            .show();
                        return false;			
                    } else {
                        $('#Tb_CodePostal').removeClass('field-error');
                        $('#fdb-Zone').removeClass('field-error').html('').hide();
                    }
     
                    var allInputs = $('#'+formId+' :input');
                    allInputs.each(function() {
                        // Initialiser les styles par defauts des balises
                        $('#'+this.name).removeClass(classFieldError);
                    });
                    return submitForm(formId);
                }	
            } catch(e) {
                alert(e);	
            }
        }
    la fonction formValidate() je l'appelle ici :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $('#Next_Button').click(function(){
            // Soumission du formulaire 
            return formValidate();
        });
    A quoi est dû cette erreur et comment peut-on faire pour la corrigé?
    Faire aisément ce qui est difficile aux autres, voilà le talent. Faire ce qui est impossible au talent, voilà le génie.

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 658
    Points
    66 658
    Billets dans le blog
    1
    Par défaut
    a quoi sert le return sur le click ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    // Soumission du formulaire 
            return formValidate();
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre actif Avatar de aljessy
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2010
    Messages
    319
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2010
    Messages : 319
    Points : 200
    Points
    200
    Par défaut
    le return sur le click me permet de recuperer la valeur retournée par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    return submitForm(formId);
    que j'utilise plus loin dans mon code. Mais je ne pense que ce soit ce return qui soit à l'origine de cette erreur vu que je l'ai enlever et je suis tombé sur le même erreur et au même endroit c'est-à-dire dans la methode catch(e) de la fonction formValidate();
    Faire aisément ce qui est difficile aux autres, voilà le talent. Faire ce qui est impossible au talent, voilà le génie.

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 959
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 959
    Points : 44 122
    Points
    44 122
    Par défaut
    Bonjour,
    il te faudrait, pour un "debuggage" plus fin, supprimer tes instructions try{}catch(){}.

  5. #5
    Membre actif Avatar de aljessy
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2010
    Messages
    319
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2010
    Messages : 319
    Points : 200
    Points
    200
    Par défaut
    Comment debugger un code javascript ou jquery? en quoi enlever le bloc m'aiderait-il?
    Faire aisément ce qui est difficile aux autres, voilà le talent. Faire ce qui est impossible au talent, voilà le génie.

  6. #6
    Expert éminent
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut
    Déjà posté les question JQuery dans le forum JQuery serait une bonne chose

    ensuite il n'y a aucune fois le mot "chaine" dans ton script alors que l'erreur est TypeError: chaine is undefined
    ce qui signifie que quelque part ton script utilise une variable chaine qui n'a pas été définie.

    la première chose à faire est de trouver le mot chaine.
    comme dit plus haut enlève le try catch
    ton erreur de sera plus captée et ton navigateur affichera dans la console la totalité de l'erreur
    avec entre autre le script et la position de l'erreur
    tu sauras alors où chercher.

    si tu ne veux pas l'enlever
    tu peux ajouter un alert(e.stack) qui te donnera des infos sur la localisation de ton erreur.

    le fait de mettre un try catch implique que si une erreur se produit dans un autre script utilisé dans le try alors l'erreur apparaitra dans ce catch là et non là où elle se produit réellement.

    A+JYT

  7. #7
    Membre actif Avatar de aljessy
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2010
    Messages
    319
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2010
    Messages : 319
    Points : 200
    Points
    200
    Par défaut
    Merci à tous pour vos réponses. Elles m'ont été d'une grande utilité.
    Faire aisément ce qui est difficile aux autres, voilà le talent. Faire ce qui est impossible au talent, voilà le génie.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Uncaught TypeError: undefined is not a function
    Par stefde3 dans le forum jQuery
    Réponses: 2
    Dernier message: 21/04/2015, 12h01
  2. Débutant // TypeError: objects is undefined
    Par regform dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 02/12/2014, 07h37
  3. [Google Maps] Geocoder, Multiple Marker et infowindow [TypeError: a is undefined]
    Par Nico440 dans le forum APIs Google
    Réponses: 3
    Dernier message: 25/06/2013, 19h05
  4. [DataTables] TypeError: m is undefined
    Par Mathieu Salles dans le forum jQuery
    Réponses: 3
    Dernier message: 18/06/2013, 16h40
  5. Passage Chaine de Caractères / Undefined Address
    Par GaetanNe dans le forum Fortran
    Réponses: 1
    Dernier message: 23/04/2012, 20h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo