Stopper un formulaire

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Stopper un formulaire

par Ryle » 14 févr. 2007, 12:34

A priori, il suffit que le submit retourne le résultat de ta fonction qui elle retournera vrai ou faux en fonction du succès :)

Code : Tout sélectionner

<form OnSubmit="javascript:return derniereCaseCochee();">

par Stef23 » 14 févr. 2007, 10:59

Si j'applique ce code, si j'ai bien compris, le formulaire se valide uniquement si ma fonction est vraie.
Mais de ce fait, je perd le message d'erreur.

Ce que je cherche a faire, c'est que quand je clique sur le bouton valider, un message s'affiche si il y a plus de 5 cases sélectionnées et donc ne lance pas le formulaire ou alors si le nombre est inférieur à 5 cases, alors OK le formulaire peut soumettre.

Comment faire ? :roll:

par mere-teresa » 13 févr. 2007, 18:37

Il faut plutôt faire
<form OnSubmit="javascript:return false;derniereCaseCochee();">

En fait, c'est le submit qui doit retourner false...sinon, ce que tu fais avec ta fonction équivaut à
<form OnSubmit="javascript:false;" .....>

Stopper un formulaire

par Stef23 » 13 févr. 2007, 17:32

Bonjour,

J'ai un javascript dans ma page qui vérifie le nombre de cases cochées.
Il se lance avec un On SUbmit dans la balise <FORM>.

J'essaye de faire en sorte que si un nombre max de cases sont cochées, le formulaire ne s'execute pas. je pensais qu'un return false stoppait tout, apparemment non...(je suis tout debutant en javascript).

<form OnSubmit="derniereCaseCochee();" .....>

Code : Tout sélectionner

<script> clicsPossibles = 5; cases = document.formulaire.elements["secteur[]"]; function derniereCaseCochee() { nbrCasesCochees = 0; for (i = 0; i < cases.length; i++) { if (cases[i].checked) { nbrCasesCochees++; } } if (nbrCasesCochees >= clicsPossibles) { window.alert('Vous avez coché plus de 5 cases pour les secteurs d\'activités !'); return false; } } </script>