Rechercher : dans
Par :

Fonctions Javascript avec un formulaire JSP

Dernière réponse le 1 avr 2008 à 15:10:35 Yakurena, le 30 mai 2005 à 09:36:55 
 Signaler ce message aux modérateurs

Bonjour,
J'ai un problème avec les fonctions Javascript qui doivent tester la vacuité des champs à saisir dans un formulaire.
J'ai le fichier suivant : (il s'appelle test_fonctionsJavascript2.jsp , donc le formulaire,quand il est validé,renvoie à la page elle-même).

******************************************************

<html>
<head>
<title> Test des fonctions Javascript empêchant l'accès à la page qu'on doit normalement avoir après saisie d'un formulaire </title>
</head>

<SCRIPT language="Javascript" type="text/javascript">

function test_vacuite()
{ if(document.identification.login.value == "") { alert("Veuillez entrer votre login"); return false; }
if(document.identification.nom.value == "") { alert("Veuillez entrer votre nom"); return false; }
if(document.identification.prenom.value == "") { alert("Veuillez entrer votre prenom"); return false; }
return true;
}

</SCRIPT>

<body>
<%
if(request.getParameter("login")!=null)
{ out.println("Le formulaire a été rempli : vous vous appelez ");
out.println(request.getParameter("prenom") + " " + request.getParameter("nom").toUpperCase());
}
else
{ out.println("Identifiez-vous : <BR> <BR>");
out.println("<FORM action='test_fonctionsJavascript2.jsp' name='identification'>");
out.println(" Login : <input type='text' name='login'><BR><BR>");
out.println(" Nom : <input type='text' name='nom'><BR><BR>");
out.println(" Prenom : <input type='text' name='prenom'><BR><BR>");
out.println("<input type='submit' name='bValider' value='Valider' onClick='test_vacuite();'>");
out.println("</FORM>");
}
%>
</body>
</html>

******************************************************

Le problème est que,quand je valide le formulaire avec un des 3 champs resté vide,le message d'erreur(declenché par la fonction alert()) apparaît bien,mais le formulaire n'est pas proposé à nouveau : à la place,j'ai le message("Le formulaire a été rempli ... ") qui doit normalement s'afficher seulement si tous les champs du formulaire sont remplis. La fonction "test_vacuite" retourne bien "false" mais apparemment cela n'empêche pas le formulaire d'être validé.
Comment puis-je résoudre ça??
Merci d'avance.

Meilleures réponses pour « Fonctions Javascript avec un formulaire JSP » dans :
Javascript - Manipulation des contrôles clavier VoirManipulation des contrôles clavier Cette astuce a pour but de vous faire découvrir la (ou du moins une) manière de contrôler les évènements clavier en javascript. Cela vous permettra de contrôler/attribuer les/des comportements particuliers à...
Javascript - Concaténation de chaînes de caractères VoirLe terme "concaténer" signifie joindre deux chaînes bout à bout pour n'en former qu'une seule. Dans la plupart des langages tels que PHP, la concaténation se fait avec le caractère ".". En javascript, il suffit d'utiliser le caractère plus (+) ou...
Javascript - Les fonctions VoirLa notion de fonction On appelle fonction un sous-programme qui permet d'effectuer un ensemble d'instructions par simple appel de la fonction dans le corps du programme principal. Cette notion de sous-programme est généralement appelée fonction...
Javascript - les boîtes de dialogue VoirQu'est-ce qu'une boîte de dialogue? Une boîte de dialogue est une fenêtre qui s'affiche au premier plan suite à un événement, et qui permet Soit d'avertir l'utilisateur Soit le confronter à un choix Soit lui demander de compléter un champ pour...
Javascript - Les structures conditionnelles VoirQu'est-ce qu'une structure conditionnelle' On appelle structure conditonnelle les instructions qui permettent de tester si une condition est vraie ou non, ce qui permet notamment de donner de l'interactivité à vos scripts : Instruction...

1

 doubledu, le 1 avr 2008 à 15:10:35

Bonjour Yakurena,

En fait ton probleme est que le javascript est correctement executé et c'est donc tes conditions d'affichage qui ne sont pas bonne. Ton Javascript ne te sert qu'à afficher ta message box mais ne peux pas intervenir sur l'interpretation de ton code java. Donc la solution a ton probleme semble etre de faire le test de tes champs dans la java :

if(request.getParameter("login")!=null&&request.getParameter("login")!=""){
// code a executer lorsque ton champ login est renseigné
}

Lors du clic la page est rechargé et re-interpreté par le serveur avec les nouveaux champs mis à jour et meme si ton champ login ne contient rien en fait il contient une chaine vide mais n'est pas nul!!

Répondre à doubledu
Collection CommentÇaMarche.net