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 appel de fonction


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2006
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 15
    Points : 10
    Points
    10
    Par défaut probleme appel de fonction
    bonjour ,

    j'ai un probleme avec mon code d'une page :

    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
     
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
      <title>test</title>
      <script>
     
      function abb()
      {
      document.write("<FORM><INPUT TYPE=\"button\" VALUE=\"cliquedessus\" onClick=\"aa()\"></FORM>");
      }
     
      function aa()
      {
      alert ("coucou");
      }
     
      </script>
      </head>
      <body >
    <INPUT TYPE="button" VALUE="salut"    onClick="abb()">
      </body>
    </html>

    le premier bouton avec salue s'affiche bien, quand je clique dessus le 2eme s'affiche aussi, mais quand je cliquesur ce 2eme la il y a une erreur, l'alert ne vient pas, il y a indiqué erreur sur la page:
    Ligne:1
    car:1
    erreur: objet attendu
    code:0

    j'ai un peu de mal a comprendre d'ou vient cette erreur.
    merci si vous pouvez m'aider.

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 144
    Points : 129
    Points
    129
    Par défaut
    Salut,

    Je pense que document.write réécrit la page et donc ton javascript part à la poubelle. Regarde le code source généré aprés le premier clic
    Nb: Aprés le premier clic firefox patine ds la smoule chez moi

    Utilise plutôt une solution de calque si cela t'est permis.
    (Du type je cache et j'affiche quand j'en ai besoin)

    Bonne chance
    "Il n'y a ni gagnant ni perdant, juste des joueurs ..."

    Pensez, si vous le pouvez encore, au tag RESOLU
    Nb: Note à moi même, ne l'oublis pas sinon tu vas te faire traiter

  3. #3
    Membre à l'essai
    Inscrit en
    Juin 2006
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 15
    Points : 10
    Points
    10
    Par défaut
    c'est bien ça, dans la 2eme page le code source est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <FORM><INPUT TYPE="button" VALUE="clique" onClick="aa()"></FORM>
    donc la fonction aa() n'est plus définie.

    je ne sais pas comment fonctionne les calques, mais je vais essayer...

    c'est vrai qu'avec firefox aprés le 1er clique, la page se charge continuellement, ça ne s'arrete pas, je rencontre ce probleme avec d'autre fonction et je ne comprend pas trop pourquoi..

    est ce qu'il exite une fonction javascript a mettre a la fin du code pour arreter le chargement d'une page?? (je devrai peu etre créer une nouvelle discution pour ça, non?)

    en tout cas merci pour ton aide.

  4. #4
    Membre à l'essai
    Inscrit en
    Juin 2006
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 15
    Points : 10
    Points
    10
    Par défaut
    j'ai essayé ça a tout hasard et ça marche pas vraiment :

    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
     
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
      <title>test</title>
      <script>
      function abb()
      {  
      document.write("<script>function aa(){alert (\"coucou\");}</script>" );
      document.write("<FORM><INPUT TYPE=\"button\" VALUE=\"clique\" onClick=\"aa()\"></FORM>");
      }
     
      </script>
      </head>
      <body >
    <INPUT TYPE="button" VALUE="salut"    onClick="abb()">
      </body>
    </html>
    est ce que quelqu'un voit mon erreur?
    enfin, je vai continuer a chercher...

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 144
    Points : 129
    Points
    129
    Par défaut
    En fait document.write efface le contenu de ta page et le remplace par ce que tu lui mets en argument.
    Donc ici il remplace deux fois le contenu

    Utiliser une solution version calque me semble plus appropiée encore que je ne sais pas ce que tu veux réellement faire.

    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
     
    <script language="Javascript">
    	function fct1 ()
    	{
    		document.getElementById ('id1').style.display = "none";
    		document.getElementById ('id2').style.display = "block";
    	}
     
    	function fct2 ()
    	{
    		alert ('test');
    	}
    </script>
     
    <div id="id1" style="display:block;">
    	<input id="button1" type="button" onClick="fct1()" value="B 1" />
    </div>
     
    <div id="id2" style="display:none;">
    	<input id="button2" type="button" onClick="fct2()" value="B 2" />
    </div>
    "Il n'y a ni gagnant ni perdant, juste des joueurs ..."

    Pensez, si vous le pouvez encore, au tag RESOLU
    Nb: Note à moi même, ne l'oublis pas sinon tu vas te faire traiter

  6. #6
    Membre expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 239
    Points
    3 239
    Par défaut
    utilise document.body.innerHTML pour remplacer document.write.... lui ne change que le CONTENU de la page et pas la page en elle-même
    Fremy
    Pour vos développements Web et une navigation agréable, le tout gratuit :
    1) IE 8 + IE7Pro (Si vous ne connaissez pas IE7Pro, essayez !)
    2) FF 3 + Web Developper Toolbar + AdBlockPlus + FireBug + GreaseMonkey

Discussions similaires

  1. probleme appel de fonction dans une DLL
    Par sylvain.cool dans le forum C++
    Réponses: 12
    Dernier message: 19/06/2008, 17h00
  2. [VB.Net] Problème appel fonction par un bouton
    Par balibo dans le forum ASP.NET
    Réponses: 4
    Dernier message: 25/11/2005, 10h48
  3. [MFC] débutant probleme appel de fonction
    Par Gloubi99 dans le forum MFC
    Réponses: 9
    Dernier message: 30/08/2005, 15h40
  4. probleme d'appel de fonction!
    Par transistor49 dans le forum C++
    Réponses: 5
    Dernier message: 11/03/2005, 10h46
  5. Réponses: 8
    Dernier message: 13/08/2004, 12h32

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