Document.createElement("script") [Résolu]

cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 3 juin 2008 à 10:52 - Dernière réponse : cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention
- 3 juin 2008 à 14:37
Bonjour à tou[te]s ,

    le script ci dessous fonctionne parfaitement avec FF et ses copains,
       pas avec IE ( ajouter dans le innerHTML ne lui plait guère ... )
   
<html>
    <head>
        <script>
            var scr = document.createElement("script");
            scr.type = "text/javascript";
            scr.innerHTML = "alert ('exemple');";      // IE n'aime pas
            document.getElementsByTagName("head")[0].appendChild(scr);           
        </script>
    </head>
   
        test
   
</html>

    je fais une grosse bourde ?
    si vous voyez comment faire avec IE....

    merci d'avance

<hr />    Bul     [mon Site]     [M'écrire]     [Laisser une adresse Mail, en évitant les spams]
Afficher la suite 

15 réponses

Répondre au sujet
PetoleTeam 3435 Messages postés lundi 26 décembre 2005Date d'inscription 14 janvier 2011 Dernière intervention - 3 juin 2008 à 12:16
+3
Utile
dans ce cas utiliser plutôt text que innerHTML
scr.text = "alert
('exemple');";
;O)
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de PetoleTeam
maelob 944 Messages postés mardi 14 novembre 2006Date d'inscription 7 août 2009 Dernière intervention - 3 juin 2008 à 12:33
+3
Utile
Bonjour cher ami Bul,
tu parles de string donc pourquoi pas essayé avec :
src.appendChild(document.createTextNode("alert('exemple');"));

Je pense pas que ça fonctionne mais au cas où je dis toujours...

<hr size="2" width="100%" />
Maelo ou Elo --> Mon blog

Si quelqu'un vous dit : "Je me tue à vous le répéter", laissez-le mourir. (Jacques Prévert)
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de maelob
PetoleTeam 3435 Messages postés lundi 26 décembre 2005Date d'inscription 14 janvier 2011 Dernière intervention - 3 juin 2008 à 11:13
0
Utile
Bonjour,
essaies avec scr.innerHTML = eval("alert ('exemple');");
;O)
Commenter la réponse de PetoleTeam
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 3 juin 2008 à 11:33
0
Utile
salut petoleTeam,

    j'avais essayé,
        ça exécute, bien entendu, mais ça plante toujours dans l'ajout
    "on" va bien y arriver...
       ( le but ce n'est pas d'exécuter, tu l'as bien compris, mais
          d'ajouter au javascript des "choses" dont je disposerais en string )
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Commenter la réponse de cs_bultez
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 3 juin 2008 à 12:45
0
Utile
t'as bien raison maelob,
    c'est en essayant des choses qu'on va y parvenir...

    ici, le libellé de l'erreur avec IE est différent, mais ça plante toujours
          avec FF, c'est ok

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Commenter la réponse de cs_bultez
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 3 juin 2008 à 12:49
0
Utile
@petoelTeam
                scr.text="alert('exemple');";
       ok, sur FF, pas de plantage mais rien ne se passe IE
                pas d'erreurs certes, mais pas d'actions non plus !
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Commenter la réponse de cs_bultez
maelob 944 Messages postés mardi 14 novembre 2006Date d'inscription 7 août 2009 Dernière intervention - 3 juin 2008 à 12:50
0
Utile
J'ai rien d'autre à te proposer :-( désolée...
Et ce que petoleTeam a proposé?
<hr size="2" width="100%" />
Maelo ou Elo --> Mon blog

Si quelqu'un vous dit : "Je me tue à vous le répéter", laissez-le mourir. (Jacques Prévert)
Commenter la réponse de maelob
maelob 944 Messages postés mardi 14 novembre 2006Date d'inscription 7 août 2009 Dernière intervention - 3 juin 2008 à 12:51
0
Utile
Bon j'ai ma réponse lol.

<hr size="2" width="100%" />
Maelo ou Elo --> Mon blog

Si quelqu'un vous dit : "Je me tue à vous le répéter", laissez-le mourir. (Jacques Prévert)
Commenter la réponse de maelob
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 3 juin 2008 à 13:04
0
Utile
@maelob...  tant pis....

@petoleTeam
    si c'est une function... ça baigne !

<html>
    <head>
        <script>
            var scr = document.createElement("script");
            scr.type = "text/javascript";
                scr.text="function msg(){alert('exemple');}";
            document.getElementsByTagName("head")[0].appendChild(scr);          
        </script>
    </head>
   
       
   
</html>

    donc        réellement pas loin pour tout colle...

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Commenter la réponse de cs_bultez
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 3 juin 2008 à 13:10
0
Utile
et même d'ailleurs :
    scr.text="function msg(){alert('exemple');} msg();";    !?!
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Commenter la réponse de cs_bultez
PetoleTeam 3435 Messages postés lundi 26 décembre 2005Date d'inscription 14 janvier 2011 Dernière intervention - 3 juin 2008 à 13:13
0
Utile
Bizarre sur IE6 ça baigne que cela soit une variable et/ou une fonction...
sans plus de test je me hasarderais à dire que c'est
<script type="text/javascript"> qu'il faut mettre ?
Mais alors pas convaincu du tout...



;O)
Commenter la réponse de PetoleTeam
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 3 juin 2008 à 13:16
0
Utile
ah ben non.....
    j'avais testé (?) , et essayé (?) avant de poser la question !!!
    ... mais probablement très très mal !

<html>
    <head>
        <script>
            var scr = document.createElement("script");
            scr.type = "text/javascript";
            scr.text="alert('exemple');";
            document.getElementsByTagName("head")[0].appendChild(scr);          
        </script>
    </head>
   
   
</html>

    ça baigne parfaitement !

    merci à vous !

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Commenter la réponse de cs_bultez
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 3 juin 2008 à 13:19
0
Utile
bon...
    dans mon cas, ça va me simplifier les choses ( au niveau écriture )

j'aurais peut-être (?) un exemple concret d'utilisation à mettre ici
    encore merci.

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Commenter la réponse de cs_bultez
@karamel 1655 Messages postés vendredi 9 mai 2008Date d'inscription 19 avril 2018 Dernière intervention - 3 juin 2008 à 14:21
0
Utile
<html>
    <head>
        <script>
            var scr = document.createElement("script");
            scr.type = "text/javascript";
            innerHTML = alert ('exemple');      // IE aime les autres aussi
            document.getElementsByTagName("head")[0].appendChild(scr);           
        </script>
    </head>
   
        test
   
</html>
Commenter la réponse de @karamel
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 3 juin 2008 à 14:37
0
Utile
oui, oui kazma... ça baigne ainsi...
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
Commenter la réponse de cs_bultez

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.