Afficher un formulaire complété dans une nouvelle fenêtre
Etape 1 : dans le body On crée le formulaire de façon classique, en prenant bien soin de donner un nom aux divers éléments (form et input). Un bouton ("Confirmer" dans notre exemple) ouvrira une nouvelle fenêtre pop-up à laquelle on donnera le formulaire comme argument.
<FORM name="form"> Question 1 : <INPUT TYPE="text" NAME="q1"><BR> Question 2 : <INPUT TYPE="text" NAME="q2"><BR> Question 3 : <INPUT TYPE="text" NAME="q3"><BR> Question 4 : <INPUT TYPE="text" NAME="q4"><BR> <INPUT TYPE="button" VALUE="Confirmer" onclick="valide(form)"> </FORM>
Etape 2 : dans le head On crée un script qui ouvrira la nouvelle fenêtre et qui viendra écrire dans celle-ci. Une petite révision du Javascript est peut-être bécessaire mais tout cela est élémentaire.
<script> <!-- var fenetreNote,texte; function valide(form) { texte="<html><head><title>Formulaire</title></head><body>" texte+="Question 1 : " + document.form.q1.value + "<BR>" texte+="Question 2 : " + document.form.q2.value + "<BR>" texte+="Question 3 : " + document.form.q3.value + "<BR>" texte+="Question 4 : " + document.form.q4.value + "<BR>" texte+='</body></html>' fenetreNote=window.open("","", "status=yes,toolbar=yes,menubar=yes,width=300,height=200,top=20,left=20"); fenetreNote.document.write(texte); } // --> </script>
Pour rappel, il est indispensable de laisser sur la même ligne : "status=yes,toolbar=yes,menubar=yes,scrollbars=yes,width=400,height=200,top=20,left=20");
Cerise sur le gâteau, on souhaite parfois pour des applications Intranet ou pédagogiques, offrir la possibilité à l'utilisateur d'enregistrer en local le formulaire complété avec les données encodées par ses soins. Cette possibilié n'existait pas sous les navigateurs de la génération précédente. Par une particularité d'Internet Explorer 5.0 (et donc uniquement si l'utilisateur a IE 5), il est maintenant possible d'enregistrer la page en local. Il faut faire : Fichier Enregistrer sous... Type : Page Web HTML uniquement (*.htm,*.html).
Il est bien entendu aussi possible d'imprimer cette confirmation en faisant : Fichier Imprimer