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 :

[DOM] Code g�n�r� par javascript inaccessible


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �m�rite
    Homme Profil pro
    Inscrit en
    Mars 2002
    Messages
    899
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 47
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2002
    Messages : 899
    Par d�faut [DOM] Code g�n�r� par javascript inaccessible
    J'ai une partie de ma page dynamique, et selon un changement de valeur dans un select, change le innerHTML d'un <TR> de ma page.
    Le probl�me est que j'aimerais ensuite pouvoir acc�der aux �l�ments que j'ai �crit dynamiquement, et que le navigateur me r�pond que mon nouvel �l�ment "n'a pas de propri�t�". Voyez-vous une solution?

    PS: quand je fais un alert du innerHTML de mon <TR> j'ai bien le code g�n�r�, et ce code est bon.

  2. #2
    Expert confirm�
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par d�faut
    bonjour,


    tu peux nous montrer ton code ?

  3. #3
    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 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    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 659
    Billets dans le blog
    1
    Par d�faut
    c'est g�n�ralement le souci lorsque l'on ajoute dynamiquement des 'objets' en utilisant innerHTML ...

    Rien en vaut un bon vieux
    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 !

  4. #4
    Membre �m�rite
    Homme Profil pro
    Inscrit en
    Mars 2002
    Messages
    899
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 47
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2002
    Messages : 899
    Par d�faut
    Citation Envoy� par Auteur
    bonjour,


    tu peux nous montrer ton code ?
    En voici une partie, (Je ne peux pas tout mettre car c'est m�lang� avec du coldfusion, je mets l'essentiel).

    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
    <tr><td><select name="type_contenu" id="type_contenu" onchange="gererType(this.options[this.selectedIndex].value)"></td></tr>
    <tr id="swapRubriqueDossier"><td>&nbsp;</td></tr>
     
    <script language="javascript">
      var JSswapDossier = '<td><select name="dossier_id" id="dossier_id"><option value=""></option></select></td>';
      var JSswapRubrique = '<td><select name="rubrique_id" id="rubrique_id"><option value=""></option></select></td>'
     
      function gererType(typeContenu){
        if(typeContenu==17){
          document.getElementById('swapRubriqueDossier').innerHTML = JSswapDossier
        }else{
          document.getElementById('swapRubriqueDossier').innerHTML = JSswapRubrique
        }
      }
    </script>
    Dans la r�alit�, les selects contiennent bien sur beaucoup plus d'options. Mais le code �i-dessus fonctionne (sauf si je me suis tromp� en l'�purant...).
    Par contre, voici celui qui ne fonctionne pas. C'est un controle sur mon onsubmit
    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
     
    <script language="javascript">
      function chkForm(f){
        var msg='';
        if(f.type_contenu.options[f.type_contenu.selectedIndex].value==17){
          if(f.rubrique_id.options[f.rubrique_id.selectedIndex].value==''){
            msg=msg+'\n - Une rubrique';
          }
        }else{
          if(f.dossier_id.options[f.dossier_id.selectedIndex].value==''){
            msg=msg+'\n - Un dossier auquel la page appartient';
          }
        }
      }
    </script>
    <form method="post" name="formul" action="page2.cfm" onsubmit="return chkForm(this);">
    � la fin il y a bien sur un traitement pour savoir si mon msg est vide. Par contre le code plante sur la ligne o� il cherche � �valuer rubrique_id ou dossier_id, qui sont les deux listes cr�es auparavant par le javascript.

    Je suis partant pour essayer la solution de SpaceFrog
    Citation Envoy� par SpaceFrog
    c'est g�n�ralement le souci lorsque l'on ajoute dynamiquement des 'objets' en utilisant innerHTML ...

    Rien en vaut un bon vieux
    Il faut juste que je puisse faire apparaitre et disparaitre mes select dossier_id et rubrique_id dynamiquement, autant de fois que je veux, puis les controler.

    Je ne connais pas cette fonction createElement(). Est-il possible d'avoir une br�ve explication (oui, je vais voir sur google tout de suite), et surtout, � quoi dois-je faire particuli�rement attention pour mon exemple?

  5. #5
    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 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    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 659
    Billets dans le blog
    1
    Par d�faut
    regarde dans la FAQ comment cr�er des objets ou elements de form avec le DOM...

    puis comment les affciher ou les masque avec style.visibility ou style.display
    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 !

  6. #6
    Membre �m�rite
    Homme Profil pro
    Inscrit en
    Mars 2002
    Messages
    899
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 47
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2002
    Messages : 899
    Par d�faut
    Citation Envoy� par SpaceFrog
    regarde dans la FAQ comment cr�er des objets ou elements de form avec le DOM...

    puis comment les affciher ou les masque avec style.visibility ou style.display
    Si je ne peux que les afficher ou les masquer �a me pose un probl�me, car ma cellule de tableau reste apparente, m�me une fois vide. Il n'y a pas moyen de les supprimer directement du HTML?

  7. #7
    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 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    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 659
    Billets dans le blog
    1
    Par d�faut
    tu as une version visible en ligne ...

    supprimer une cellule du flux html peut poser des probl�mes de structure du tableau il faut un m�me nombre de cellules par ligne ou modifier les colspan des autres cellules ...

    parcontre si tu n'as qu'une cellule par ligne ... joue sur le style.display du tr ...
    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 !

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Tester du code html g�n�r� par javascript
    Par awalter1 dans le forum Balisage (X)HTML et validation W3C
    R�ponses: 6
    Dernier message: 06/03/2012, 19h42
  2. [DOM] input Hidden g�n�r� par javascript et recup en php
    Par Acropole dans le forum G�n�ral JavaScript
    R�ponses: 3
    Dernier message: 02/03/2007, 17h31
  3. [Blend beta 1][VS Extension WPF CTP 11/06] VS ne lit pas le code g�n�r� par Blend
    Par FRED.G dans le forum Windows Presentation Foundation
    R�ponses: 4
    Dernier message: 09/12/2006, 17h50
  4. Code g�n�r� par JSF
    Par vny dans le forum JSF
    R�ponses: 3
    Dernier message: 24/10/2006, 10h50
  5. Lancer la GUI � partir de code g�n�r� par VE
    Par Cedric507 dans le forum Interfaces Graphiques en Java
    R�ponses: 3
    Dernier message: 19/09/2006, 11h23

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