modifier champ hidden en temps réel

vinyl
Invité n'ayant pas de compte PHPfrance

04 nov. 2006, 16:51

voilà mon problème :

je voudrais savoir s'il est possible de modifier en temps réel le champ hidden d'un formulaire...
je m'explique ! lorsque j'ouvre la page, le champs hidden s'alimente par une valeur passée par défaut <input type='hidden' value='test'>

j'ai besoin de fermer ma page au moment du submit formulaire en affichant sur une autre page le contenu du champs hidden mais avec le commande (il s'agit d'un pop up) window.opener.document.getElementbyId('tat').innerHTML=document.forms.monform.champhidden.value;
le problème c'est que lorsque je saisi du texte dans un autre champ, il faudrait que le contenu saisi aille immédiatement alimenter le champ hidden car il garde en mémoire sa valeur par défaut...tout irait bien si je faisais un simple post du formulaire mais pas dans mon cas.

y a t-il une solution ?

merci par avance

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

05 nov. 2006, 11:53

Y a un truc qui m'échappe.. si le champ hidden doit avoir la même valeur qu'un autre champ de ta page, pourquoi na pas passer l'autre champ à ta popup au lieu de t'embêter avec le hidden ? :)

Ceci dit, tu peux quand même mettre à jour le champs hidden. Il te faut pour cela choisir l'événement qui déclenche la mise à jour : ça peut être à chaque que l'utilisateur presse une touche dans le champ normal (onKeyPress et ses variantes) ou lorsqu'il quitte celui-ci (onBlur)

Prenons par exemple la perte du focus sur le champ pour ne faire la mise à jour qu'une seule fois une fois le texte saisi :

Code : Tout sélectionner

<input type="text" name="monChampVisible" onBlur="document.formulaire.champhidden.value = this.value;" />
Ca fonctionne tout aussi bien avec onKeyPress :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Invité
Invité n'ayant pas de compte PHPfrance

05 nov. 2006, 17:48

merci pour ton aide !
je vais tester cela !
en fait, j'ai trouvé une autre solution en passant par la démarche proposée par l'application que j'utilise (il s'agit d'un éditeur de texte opensource : FCKeditor)

le champs hidden est récupéré par une autre page qui affiche le contenu saisi. J'utilise en fait la variable récupérée par ce contenu pour la passer ensuite dans le window.opener....etc, en fermant la fenêtre.

ca fonctionne tout ausi bien sans avoir à me préoccuper de la page editeur qui est un peu complexe pour moi (la variable passée à hiddeninput semble être un tableau)...

bref ! mon problème est résolu comme je le désire

merci encore pour tes conseils