innerHTML qui ne fonctionne pas

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : innerHTML qui ne fonctionne pas

par jojolapine » 18 oct. 2007, 12:18

Et bien en fait le problème est [résolu], il venait du fait que j'utilisais innerHTML au lie de value pour remplir mon textarea...

innerHTML qui ne fonctionne pas

par jojolapine » 18 oct. 2007, 11:42

Bonjour à tous,
je suis en train de créer pour une interface admin des petits liens qui insèrent du contenu dans un textarea pour faire comme du "bbcode" (sauf que moi j'insère de l'html...)
ALors le problème est le suivant, si je clique sur mes liens au départ avant de toucher au textarea, tout se passe bien, je peux insérer autant de fois que je veux des "<b></b>" et autres joyeusetés...
Le problème survient lorsque je tappe quelque chose dans le textarea, à ce moment là, les liens ne fonctionnent plus, et je n'ai aucun message d'erreur dans la console de firefox... :(
sans plus attendre, les codes:
le javascript:

Code : Tout sélectionner

function miseEnForme(b){ txtarea=document.getElementById('message'); switch(b){ case 'b': content='<b></b>'; break; case 'i': content='<i></i>'; break; case 'u': content='<u></u>'; break; } txtarea.innerHTML=txtarea.innerHTML+content; }
et l'html:

Code : Tout sélectionner

<p> <label for="message" title="Contenu de la news" class="oblig">* Message :</label><br /> <a href="javascript:miseEnForme('b')" title="gras"><b>b</b></a> <a href="javascript:miseEnForme('i')" title="italique"><i>i</i></a> <a href="javascript:miseEnForme('u')" title="souligné"><u>u</u></a> <textarea tabindex="2" id="message" name="message" rows="5" cols="40"></textarea> </p>
DOnc bon je ne sais pas trop comment faire pour débugger...
merci d'avance pour vos réponses ;)