OVH Cloud OVH Cloud

modification d'un textarea avant submit

1 réponse
Avatar
Christophe Raverdy
Note : je pense que je suis obligé de passer par javascript que je
découvre à cette occasion. Désolé si mes questions paraissent lourdes.

Bonjour.

J'ai défini le formulaire suivant :

====================================================================
<form method="Post" action="identifie_champs.php">
<textarea name="headers" COLS="80" ROWS="25">coller ici les entêtes</textarea>

<button type="SUBMIT">Valider</button>
</form>
====================================================================

A première vue il y a "interprétation" du bloc car toutes les données de
type "<[.]*>" disparaissent. Le reste de la zone "textarea" est transmis
proprement. Je dois donc faire les modifications avant de passer la main
au script php.

A première vue je dois passer par javascript et remplacer toutes les
occurences de "<" par "&lt;" avant de remettre le nouveau contenu
dans le champ textarea.

J'ai fait des essais ce matin mais je bloque complètement. J'aurais donc
aimé avoir des pistes pour

- savoir comment (et où) appeler la fonction javascript (au niveau du
bouton "submit" ? en ayant deux formulaires le premier faisant le
transcodage et le deuxième invoquant le script php ? existe-t-il une
solution plus simple ?)

- savoir comment de manière simple récupérer la valeur, opérer le
remplacement et écrire le résultat après modification.


Par avance, merci.


--
Un vote est en cours pour ajouter un forum à la branche fr.lettres.langues

Vous trouverez l'AAV4 en news:fq3fp2d891oeb5ofbgv0k6eg9v5j338nni@neottia.net
Le 6 janvier 2007, ce sera trop tard.

1 réponse

Avatar
kurtz le pirate
In article ,
Christophe Raverdy wrote:

Note : je pense que je suis obligé de passer par javascript que je
découvre à cette occasion. Désolé si mes questions paraissent lourdes.

Bonjour.

J'ai défini le formulaire suivant :
..
- savoir comment (et où) appeler la fonction javascript (au niveau du
bouton "submit" ? en ayant deux formulaires le premier faisant le
transcodage et le deuxième invoquant le script php ? existe-t-il une
solution plus simple ?)


tu ajoute l'appel à ta fonction dans :
<form method=...action=... name="formulaire" onSubmit="fonction()">


- savoir comment de manière simple récupérer la valeur, opérer le
remplacement et écrire le résultat après modification.


dans ta fonction js déclarée dans le <head></head>, tu récupères le
contenu du textearea comme ça :
toto = document.formulaire.headers.value;

tu fais tes remplacement comme ça :
toto = valeur.replace(/</g,"&lt;");
toto = valeur.replace(/>/g,"&gt;");

et tu remets la valeur dans le champs :
document.formulaire.headers.value = toto;


Par avance, merci.
ce n'est qu'une manière de faire parmis tant d'autres.

pas testé !


--
klp