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 :

probleme avec innerHTML


Sujet :

JavaScript

  1. #1
    Membre averti
    Avatar de phpiste
    Homme Profil pro
    Développeur Senior
    Inscrit en
    Septembre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

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

    Informations forums :
    Inscription : Septembre 2006
    Messages : 251
    Points : 445
    Points
    445
    Billets dans le blog
    7
    Par défaut probleme avec innerHTML
    Salut a tous le monde
    j'ai un ptit script (java script) généré en php pour le formatage d'erreur l'ors de l'envoi d'un formulaire
    le probleme c'est que aucun changement ne s'effectue malgré que le code semble correcte
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    document.getElementById("div_prenom").innerHTML='<strong>le champs <strong>prenom</strong> est obligatoire</strong>';
    et la div avec l'id correspendant 'div_prenom' existe bien
    Aider moi SVP c'est tres urgent

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    si "aucun changement ne s'effectue", c'est que tu as une erreur JS ailleurs dans ta page.

    A+

  3. #3
    Membre averti
    Avatar de phpiste
    Homme Profil pro
    Développeur Senior
    Inscrit en
    Septembre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

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

    Informations forums :
    Inscription : Septembre 2006
    Messages : 251
    Points : 445
    Points
    445
    Billets dans le blog
    7
    Par défaut
    Merci E.Bzz ;
    j'ai verifier qu'il n'y aucune erreur autre que celle si :
    document.getElementById('div_prenom') has no properties

  4. #4
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par phpiste Voir le message
    document.getElementById('div_prenom') has no properties

    Donc la la div avec l'id correspendant 'div_prenom' n'existait pas "bien" ?



    A+

  5. #5
    Membre éprouvé Avatar de sharrascript
    Homme Profil pro
    Développeur Web indépendant
    Inscrit en
    Avril 2007
    Messages
    678
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web indépendant

    Informations forums :
    Inscription : Avril 2007
    Messages : 678
    Points : 1 042
    Points
    1 042
    Par défaut
    bonsoir,

    en effet

    Est-il possible de montrer un plus gros bout de code, au moins du js à la div??

  6. #6
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 681
    Points : 5 221
    Points
    5 221
    Par défaut
    en tout cas, étonnant le html que tu veux générer

  7. #7
    Membre averti
    Avatar de phpiste
    Homme Profil pro
    Développeur Senior
    Inscrit en
    Septembre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

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

    Informations forums :
    Inscription : Septembre 2006
    Messages : 251
    Points : 445
    Points
    445
    Billets dans le blog
    7
    Par défaut
    Oui vous avez tous raison c'est un peut ambigue
    en effet c'est une fonction php qui va generer un code java script pour un traitement d'erreur
    chaque champs de mon formulaire possede une petite div a coté avec le suffix "div_" concateiné a chaque iteration de la boucle avec le nom du champs input correspondant bref voila la fonction php

    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
    function format_JS_error()
    {	
    // $this->error_formated : cette variable contient un tableau à 2 dimension content l'erreur et le nom du champs input
    $count=	count($this->error_formated);
    $JS='<script language="javascript" type="text/javascript">' ;
    for($i=0;$i<$count;$i++){
     
    	$libele		= $this->error_formated[$i][0]   ;
    	$error		= $this->error_formated[$i][1]	;
    	$JS 		.="document.getElementById('div$libele').innerHTML='$error'" ;
    	$JS 		.=' ; ' ;
    }
     
    $JS.='</script>' ;
    return $JS ;
     
    }
    et voila le code js généré dans la page :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     <script language="javascript" type="text/javascript">
    document.getElementById('div_pass').innerHTML='Le mot de passe de confirmation de concorde pas avec votre mot de passe. Veuillez réessayer' ;
     document.getElementById('div_nom').innerHTML='le champs <strong>nom</strong> est obligatoire' ; 
    document.getElementById('div_prenom').innerHTML='le champs <strong>prénom</strong> est obligatoire' ; 
    document.getElementById('div_login').innerHTML='le champs <strong>login</strong> est obligatoire' ; 
    document.getElementById('div_pass2').innerHTML='le champs <strong>Confirmation du password</strong> est obligatoire' ; 
    document.getElementById('div_page_redirection').innerHTML='le champs <strong>Page de redirection</strong> est obligatoire' ; </script>
    Cordialement

  8. #8
    Membre habitué Avatar de gKsam
    Profil pro
    Inscrit en
    Août 2007
    Messages
    166
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 166
    Points : 153
    Points
    153
    Par défaut oui mais dans le code HTML
    Quand tu utilises la fonction getElementById(), il faut bien que quelque part dans ton document HTML il y ai un élément qui ai l'id que tu veux récupérer.

    Sinon, tu as coups sûr un document.getElementById('div_prenom') has no properties car il n'existe pas d'élément avec l'id 'div_prenom'.

    Donc pas de possibilité d'avoir l'attribut innerHTML.

    En gros, il faut au moins que tu aies pour le div_prenom :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <div id="div_prenom"></div>
    et ainsi de suite pour les autres calques.

  9. #9
    Membre averti
    Avatar de phpiste
    Homme Profil pro
    Développeur Senior
    Inscrit en
    Septembre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

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

    Informations forums :
    Inscription : Septembre 2006
    Messages : 251
    Points : 445
    Points
    445
    Billets dans le blog
    7
    Par défaut
    Non non la div avec l'id 'div_prenom' existe déja !
    le probleme que tous le code et le démarche semble correcte mais vraiment je me suis coinçé la
    à+

  10. #10
    Membre habitué Avatar de gKsam
    Profil pro
    Inscrit en
    Août 2007
    Messages
    166
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 166
    Points : 153
    Points
    153
    Par défaut Une autre idée
    Quand appels-tu tes getElementById?

    Si tu les appels dans le head de ton document HTML la section body n'est pas encore créée et donc les calques n'existe pas.

    Donc dans ce cas là. Soit tu appels ton script dans body onload="" ou alors à la fin de ta page html (soit à la fin du body, soit après </html>)

  11. #11
    Membre averti
    Avatar de phpiste
    Homme Profil pro
    Développeur Senior
    Inscrit en
    Septembre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

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

    Informations forums :
    Inscription : Septembre 2006
    Messages : 251
    Points : 445
    Points
    445
    Billets dans le blog
    7
    Par défaut ça marche parfaitement
    Alors la je vous remercie beacoups
    et en particulier gKsam : ça marche parfaitement maintenant
    un tres bon sens de débogage
    à bientot !

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

Discussions similaires

  1. [AJAX] probleme avec innerhtml
    Par GTJuanpablo dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 19/03/2006, 13h21
  2. probleme avec innerHTML
    Par GTJuanpablo dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 17/02/2006, 15h06
  3. probleme avec la touche F10
    Par b.grellee dans le forum Langage
    Réponses: 2
    Dernier message: 15/09/2002, 22h04
  4. Probleme avec fseek
    Par Bjorn dans le forum C
    Réponses: 5
    Dernier message: 04/08/2002, 07h17
  5. [Kylix] probleme avec un imagelist
    Par NicoLinux dans le forum EDI
    Réponses: 4
    Dernier message: 08/06/2002, 23h06

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