saiyajin3
Messages postés31Date d'inscriptionmercredi 13 avril 2005StatutMembreDernière intervention24 juillet 2007
-
27 avril 2007 à 15:03
saiyajin3
Messages postés31Date d'inscriptionmercredi 13 avril 2005StatutMembreDernière intervention24 juillet 2007
-
28 avril 2007 à 14:14
Bonjour,
J'ai une fonction javascript qui teste les champs d'un formulaire avant de l'envoyer.
- Ce que je veux c'est que si un champs du formulaire n'est pas renseigné, alors --> Alerte Javascript (Ca je sais faire) + Arrêt de l'envoi du formulaire!!!!
- Mais quand l'alerte s'ouvre et que je clique sur OK, la page continu son traitement et du coup, logiquement... ça plante.
Comment faire pour ARRETER le traitement quand un champs n'est pas renseigné?
J'ai mis des "return false" mais ca marche pas! J'ai aussi essayé des exit(1), exit(),.....
VOICI MON CODE
if(nom.length == 0)
{
messageErreur += "Le champ 'nom' est obligatoire\n";
}
if(prenom.length == 0)
{
messageErreur += "Le champ 'prenom' est obligatoire\n";
}
nhervagault
Messages postés6063Date d'inscriptiondimanche 13 avril 2003StatutMembreDernière intervention15 juillet 201137 27 avril 2007 à 22:59
Salut,
Je pense que tu es sur une mauvaise direction.
Voila ce que je te propose :
<Form action="mapage.do" method="post">
"test1()">
</Form>
function test1(){
//Le test
if(toutestOk){
document.submit();
}else{
//rien le document n'est pas soumis
}}
De cette manière les fonctions fonctionne indépendamennts.
Car si tu rajoutes un champ,
dans ta manière de fonctionner il faut rajouter un argument dans tous les appels a ta fonction.
Et rajouter le traitement a ta fonction, pour le dernier controle.
Si tu as 10 controles a verifier tu auras 10 argument a ta fonction.
NB.
Tu peux de plus faire des fonctions plus génériques.
exemple
onBlur="testObligation(this)" //perte focus
function testObligation(objet)
{
if (objet.value.length ==0 ){alert("Ce champ est obligatoire"); objet.focus();
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 27 avril 2007 à 15:16
Bonjour,
tu n'as pas du chercher bien longtemps ?
parce qu'avec le nombre de questions ( donc réponses ) ou
d'exemples qui existent ne serait-ce qu'ici sur ce forum !
<script type="text/javascript">
function fonction_controle()
{
... controle des champs....
s'il y a une erreur : return false;
return true; sinon
}
...
<form onsubmit="return(fonction_controle(...));"...>
... ...
J'ai pour le même formulaire 3 boutons différents qui demande à la servlet des actions différentes.
(--> D'où les 3 arguments de la fonction "controle", qui doivent prendre la valeur TRUE ou FALSE)
MAIS comment affecter la valeur TRUE à l'un de ces 3 arguments lorsque je clique sur l'un des 3 boutons correspondant?
(Ne vous moquez pas, je suis débutant et je planche dessus depuis ce matin )
saiyajin3
Messages postés31Date d'inscriptionmercredi 13 avril 2005StatutMembreDernière intervention24 juillet 2007 27 avril 2007 à 16:49
Désolé de l'abscence... J'étais en train d'accrocher la corde pour me pendre.
Bref, Mon système fonctionne ainsi :
- Mes boutons sont de type
- C'est au CLIC DU BOUTON que je lance mes tests JavaScript :
- Voici un exemple de bouton :
onClick="appelerMAServlet('Envoi du nom et prenom',false</gras>,true,false,false,false,false)">
- Le TRUE que j'ai mis en rouge indique que je veux tester seulement une partie X de mon formulaire.
- DONC : La fonction appelerMAServlet marche niquel parceque elle m'alerte bien si j'ai un champs non renseigné.
- MAIS elle n'arrete pas le traitement demandé, comme je l'aurai souhaité...