Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Copier le contenu d'un textarea dans un autre

7 views
Skip to first unread message

Pascal Bourdais

unread,
May 21, 2010, 5:38:00 AM5/21/10
to
Bonjour,

J'ai cette portion de code qui me pose problᅵmeᅵ:

<textarea style="float: left;" cols="80" rows="3"
id="mesg_0" name="mesg[]">test message
ligne 2
ligne 3</textarea>

<textarea style="float: left;" cols="80" rows="3" id="mesg_1"
name="mesg[]"></textarea>

<input style="margin-left:2em;" type="button" value='def5'
onclick="document.getElementById('mesg_1').innerHTML =
document.getElementById('mesg_0').innerHTML; ">


Quand je l'execute sous FF, je retrouve bien les sauts de ligne, sous
IE8, je perds les sauts de ligne.

Le but est de charger le contenu d'un fichier dans un textarea en
cliquant sur un bouton pour proposer des donnï¿œes par dï¿œfaut, ou une
donnï¿œe ancienne.

Si quelqu'un a une piste sur comment faire ...

Pascal

--
ᅵ Celui qui est prᅵt ᅵ sacrifier un peu de libertᅵ pour obtenir un peu de
sᅵcuritᅵ ne mᅵrite vraiment ni l'une, ni l'autre. ᅵ ( Benjamin Franklin )

Olivier Miakinen

unread,
May 21, 2010, 6:52:14 AM5/21/10
to
Bonjour,

Le 21/05/2010 11:38, Pascal Bourdais a ï¿œcrit :
>
> J'ai cette portion de code qui me pose problï¿œme :
>
> [...]


> onclick="document.getElementById('mesg_1').innerHTML =
> document.getElementById('mesg_0').innerHTML; ">
>
> Quand je l'execute sous FF, je retrouve bien les sauts de ligne, sous
> IE8, je perds les sauts de ligne.
>

> [...]


>
> Si quelqu'un a une piste sur comment faire ...

Peut-ᅵtre en remplaᅵant ᅵ .innerHTML ᅵ par ᅵ .data ᅵ, ou plus
probablement par ᅵ .firstChild.data ᅵ ? Ou peut-ᅵtre en faisant un
cloneNode() du .firstChild ? Si ï¿œa ne fonctionne pas, nul doute que SAM
saura trouver la solution !

Pascal Bourdais

unread,
May 21, 2010, 8:32:01 AM5/21/10
to
Le Fri, 21 May 2010 12:52:14 +0200, Olivier Miakinen a ï¿œcrit:

Merci pour ta rï¿œponse. Il fallait un mix de tout ï¿œa :

<input style="margin-left:2em;" type="button" value='def5'

onclick="document.getElementById('mesg_1').value =
document.getElementById('mesg_0').value; ">

plus du rab pour que ï¿œa marche avec IE8.

SAM

unread,
May 21, 2010, 11:57:37 AM5/21/10
to
Le 5/21/10 11:38 AM, Pascal Bourdais a ï¿œcrit :
> Bonjour,
>
> J'ai cette portion de code qui me pose problï¿œme :

>
> <textarea style="float: left;" cols="80" rows="3"
> id="mesg_0" name="mesg[]">test message
> ligne 2
> ligne 3</textarea>
>
> <textarea style="float: left;" cols="80" rows="3" id="mesg_1"
> name="mesg[]"></textarea>
>
> <input style="margin-left:2em;" type="button" value='def5'
> onclick="document.getElementById('mesg_1').innerHTML =
> document.getElementById('mesg_0').innerHTML; ">
>
>
> Quand je l'execute sous FF, je retrouve bien les sauts de ligne, sous
> IE8, je perds les sauts de ligne.

attention aux dangers d'utilisation de innerHTML !
chaque navigateur en faisant un peu ce qu'il veut
<http://stephane.moriaux.pagesperso-orange.fr/truc/innerHTML_danger>

et bᅵtement ... ᅵ l'ancienne mode ... puisqu'on est certainement dans un
form et que l'innerHTML d'un textarea n'en est qu'une reprï¿œsentation de
la value du dit textarea :

<input style="margin-left:2em;" type="button" value='def5'

onclick="mesg_1.value = mesg_0.value; ">

bien que les puristes pourront gueuler ᅵ l'horreur ...
alors compliquons un peu :

<input style="margin-left:2em;" type="button" value='def5'

onclick="this.form['mesg_1'].value = this.form['mesg_0'].value;">

que donne-ce cette fois ?
(je n'ai pas IE)

--
sm

SAM

unread,
May 21, 2010, 12:03:12 PM5/21/10
to
Le 5/21/10 12:52 PM, Olivier Miakinen a ï¿œcrit :

>
> Peut-ᅵtre en remplaᅵant ᅵ .innerHTML ᅵ par ᅵ .data ᅵ, ou plus
> probablement par ᅵ .firstChild.data ᅵ ? Ou peut-ᅵtre en faisant un
> cloneNode() du .firstChild ? Si ï¿œa ne fonctionne pas, nul doute que SAM
> saura trouver la solution !

nia nia !
tu as oubliᅵ "value"

chiante cette habitude de ne plus coder qu'en DOM
en oubliant que le JS existait sans le DOM avant
et que pour les forms il vaut mieux s'en tenir aux anciennes recettes
comme d'attraper les ï¿œlï¿œments par leur nom et non pas par leur id
et de ne pas rᅵ-inventer la roue avec du innerHTML quand value est fait pour

--
sm

SAM

unread,
May 21, 2010, 12:11:23 PM5/21/10
to
Le 5/21/10 2:32 PM, Pascal Bourdais a ï¿œcrit :

>
> plus du rab pour que ï¿œa marche avec IE8.

sans doute prï¿œfï¿œre t-il le non mï¿œlange des genres ?
et qu'on ne lui fille pas des objets DOM
pour lui parler de value.

value plutᅵt rᅵservᅵ aux ᅵlᅵments de formulaires

ï¿œlï¿œments qui s'attrapent donc par
leurs noms au sein de la collection du form

var f = document.forms[0].elements;
if(f && f.length>0)
with (f) { if(!!chp_1 && !!chp_2) chp_1.value = chp_2.value; }

--
sm

Pierre Goiffon

unread,
May 25, 2010, 10:56:33 AM5/25/10
to
On 21/05/2010 18:03, SAM wrote:
> chiante cette habitude de ne plus coder qu'en DOM
> en oubliant que le JS existait sans le DOM avant
> et que pour les forms il vaut mieux s'en tenir aux anciennes recettes
> comme d'attraper les �l�ments par leur nom et non pas par leur id
> et de ne pas r�-inventer la roue avec du innerHTML quand value est fait
> pour

St�phane pr�sident !!
;)

Olivier Miakinen

unread,
May 27, 2010, 7:07:32 AM5/27/10
to
Le 25/05/2010 16:56, Pierre Goiffon rᅵpondit ᅵ SAM :

>
>> chiante cette habitude de ne plus coder qu'en DOM
>> en oubliant que le JS existait sans le DOM avant
>> et que pour les forms il vaut mieux s'en tenir aux anciennes recettes
>> comme d'attraper les ï¿œlï¿œments par leur nom et non pas par leur id
>> et de ne pas rᅵ-inventer la roue avec du innerHTML quand value est fait
>> pour
>
> Stï¿œphane prï¿œsident !!
> ;)

:-D

([OUI])

SAM

unread,
May 27, 2010, 11:25:05 AM5/27/10
to
Le 5/27/10 1:07 PM, Olivier Miakinen a ï¿œcrit :

>> Stï¿œphane prï¿œsident !!
>> ;)
>
> :-D
>
> ([OUI])

NAN :-(

0 new messages