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 :

fonction javascript d'une page générée dynamiquement


Sujet :

JavaScript

  1. #1
    Membre du Club
    Profil pro
    Developpeur
    Inscrit en
    Septembre 2004
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Developpeur

    Informations forums :
    Inscription : Septembre 2004
    Messages : 114
    Points : 43
    Points
    43
    Par défaut fonction javascript d'une page générée dynamiquement
    Bonsoir,

    J'ai un petit problème que je n'arrive pas à résoudre, je suis sur que l'un d'entre vous a déjà été confronté à ce type. Je génére ma page html dynamiquement via une page php, dedans j'y mets un code javascript que je souhaite que la page éxécute au chargement de la page.

    Voici la source de la page générée :

    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
    <script language="javascript">
     
    				var tabImages = new Array(
    new Array("<a href='upload/20070821095912DSC01695.jpg' rel='lightbox'><img src='upload/small/20070821095912DSC01695.jpg'/></a>","6.00"),
    new Array('', ''));
     
    				function c2(i){
     
    				document.getElementById("photo_div").innerHTML = ""+tabImages[i][photo]+""; 
     
    				document.getElementById('val_moyenne').innerHTML = ""+tabImages[i][moyenne]+""; 
     
    				}
     
    				function c1(i){
     
     
    				document.getElementById("photo_div").innerHTML = "<br/><br/><img src='images/loading.gif' id='chargement' style='top:50px;'/><br/><br/><br/>";
     
    				setTimeout("c2("+i+");",500);
     
    				}
     
    				window.onload = c1(1);
     
    				</script><table cellpadding='2' cellspacing='2' width='100%'><tr align='center'><td><a class='lien_rose' href="c1(1);">1</a> <a class='lien_rose' href="c1(2);">2</a> </td></tr></table>
    <div id="photo_div">photo</div><div id="moyenne"><img id="etoile" src="images/etoile.gif" /><span class="gros_rose"><div id="val_moyenne"></div></span><span class="gris">/20</span></div>
    Il me dit que :
    Erreur : document.getElementById("photo_div") has no properties
    Fichier source : top-hommes.html
    Ligne : 19 qui correspond à document.getElementById("photo_div").innerHTML

    La div existe pourtant bien mais ca ne change pas le contenu et l'erreur est reportée !

    Quelqu'un aurait la solution ?

    Merci d'avance

    Louis

  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,
    Citation Envoyé par allserv Voir le message
    Quelqu'un aurait la solution ?
    passe toute ta partie <script> dans le <head> de ta page ...

    A+

  3. #3
    Membre du Club
    Profil pro
    Developpeur
    Inscrit en
    Septembre 2004
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Developpeur

    Informations forums :
    Inscription : Septembre 2004
    Messages : 114
    Points : 43
    Points
    43
    Par défaut
    et si je n'ai pas la possibilité de le faire :-\ ?

    edit : je viens de copier/coller le script dans une nouvelle page avec le script entre les balises head et j'ai le même problème

  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 allserv Voir le message
    et si je n'ai pas la possibilité de le faire :-\ ?
    Ben passe le au moins après la balise </body>.
    Parce que tel qu'il est là, au moment où JS s'exécute, "photo_div" n'existe pas encore dans la page ...

    edit : je viens de copier/coller le script dans une nouvelle page avec le script entre les balises head et j'ai le même problème
    Je n'ai pas garanti qu'il n'y avait aucun autre problème dans le code.
    C'est juste que c'était à ça que correspondait ce message d'erreur

    A+

Discussions similaires

  1. Référencer une page générée dynamiquement.
    Par themoye dans le forum Référencement
    Réponses: 4
    Dernier message: 11/01/2012, 14h09
  2. Problème fonctions javascript dans une page JSP
    Par jrosenzw dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 28/10/2008, 09h57
  3. [AJAX] Appel d'une fonction javascript dans une page chargée en ajax
    Par baedal dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 17/04/2008, 18h03
  4. insérer une fonction javascript dans une page aspx
    Par intissar_g dans le forum ASP.NET
    Réponses: 2
    Dernier message: 13/06/2007, 11h20
  5. [AJAX] Code source d'une page générée dynamiquement
    Par Amnesiak dans le forum Langage
    Réponses: 3
    Dernier message: 20/02/2007, 19h06

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