NE PAS interpréter balise <script> dans un textarea

Résolu
sphaxslayer Messages postés 216 Date d'inscription mardi 5 avril 2005 Statut Membre Dernière intervention 17 septembre 2008 - 23 juil. 2008 à 10:09
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 - 23 juil. 2008 à 14:02
Bonjour tout le monde !

Je me tourne vers vous car j'ai un petit souci que je n'arrive pas à résoudre. Voilà le problème et sa situation :

dans le cadre d'une administration des contenus d'un site, notamment pour ce qui concerne par exemple les bandeaux publicitaires, j'ai un textarea qui doit pouvoir contenir des éléments balisés (HTML, JavaScript particulièrement). Lorsque je renseigne son contenu avec du HTML, les balises sont bien laissées "en brut" et non interprétées, tout va bien. Par contre, dès que j'essaie de mettre ce simplissime petit morceau :

<script type="text/javascript">
          alert('oops!');
</script>

lorsque je sauvegarde et rafraîchis mon contenu (rafraichissement via requête AJAX), et bien j'ai mon alert qui me pète au nez.. Vous l'aurez compris, je ne peux pas échapper les tags puisque je dois pouvoir les conserver...

Auriez-vous une solution à me proposer, une astuce quelconque ?

Pour information supplémentaire, j'ai besoin de pouvoir gérer du JS dans des contenus de ce genre notamment pour les scripts AdSense, Analytics etc...

Merci par avance !

"Un seul Être vous manque, et tout est dépeuplé..."

6 réponses

cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
23 juil. 2008 à 10:59
Bonjour,

1° dans un textarea, rien n'est interprété du contenu ( le javascript non plus )
2° avec ajax, rien n'est interprété de la réponse ( le javascript non plus )

tu dois avoir un "eval" par exemple dans le traitement d'ajax qui fait
d'interpréter ce javascript. tu utilises ce qu'on appelle "un framework" ?
si oui, on doit bien pouvoir lui dire de ne pas interpréter, si non,
"il suffit" de ne pas interpréter...

<hr />                Cordialement            Bul        
3
sphaxslayer Messages postés 216 Date d'inscription mardi 5 avril 2005 Statut Membre Dernière intervention 17 septembre 2008
23 juil. 2008 à 11:03
Salut, et merci de ta réponse.

Effectivement, j'ai viré les evalScripts:true (remplacés à false) dans mes scripts... J'ai peut-être du en laisser trainer un, je vais bien refouiner... Ta réponse est celle qui m'était venue en premier... Mais du fait que le HTML passait et le script non, je me suis dit tiens, me tomperai-je ? :)

Sinon en effet, nous utilisons la bibliothèque Moo... Je reviens pour tenir le sujet à jour :)

merci !

"Un seul Être vous manque, et tout est dépeuplé..."
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
23 juil. 2008 à 11:25
le eval n'est là que pour le javascript.
et pas obligé que cela soit un eval
  regarde GAG ici par exemple , pas obligatoirement un eval qui est employé )
<hr />                Cordialement            Bul        
0
sphaxslayer Messages postés 216 Date d'inscription mardi 5 avril 2005 Statut Membre Dernière intervention 17 septembre 2008
23 juil. 2008 à 11:32
hmm.. ok.. mais alors je ne sais pas comment lui éviter de le faire !

Car je ne suis pas spécialiste JS/AJAX et encoire moins de Moo, malheureusement... parce qu'outre la couche JS, je ne vois pas à quel endroit une ligne peut indiquer d'évaluer le contenu de ma box (c'est du Java qui est derrière).

C'est étrange.. je suis toujours en train de regarder si un evalScript n'a pas été laissé, au cas où... je ne vois rien d'autre à priori pour l'instant, nos fonctions étant relativement simples (construction d'une URL, paramètrage et appel avec parfois un onSuccess/onFailure qui affiche ou masque un message d'erreur/de succès, et rien de compliqué à tout niveau de nos appels..)

Merci en tous cas de ton aide, je ne pense pas être bien loin ! :)

"Un seul Être vous manque, et tout est dépeuplé..."
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
sphaxslayer Messages postés 216 Date d'inscription mardi 5 avril 2005 Statut Membre Dernière intervention 17 septembre 2008
23 juil. 2008 à 13:53
Il s'agissait bien d'un evalScripts:true qui était resté, dans une autre fonction appelée depuis un autre fichier.. je l'ai donc pas vu de suite, Firebug m'a aidé à le localiser :)

Merci de ton aide en tous cas !

"Un seul Être vous manque, et tout est dépeuplé..."
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
23 juil. 2008 à 14:02
nickel... pas de mystère en informatique,
merci du retour.
<hr />                Cordialement            Bul        
0
Rejoignez-nous