[javascript] button
Résolu
ben85350
Messages postés
622
Statut
Membre
-
ben85350 Messages postés 622 Statut Membre -
ben85350 Messages postés 622 Statut Membre -
Bonsoir à tous !,
L'utilisateur doit remplir un formulaire. je verifie ce formulaire avec une fonction js. Voila le code HTML et le js qui vérifie si le formulaire est correctement remplit :
et sur ma page2.php j'aimerais qu'il effectue les opérations si on clique sur ce bouton
Mais cela ne fonctionne pas. Biensur en mettant un input type submit à la place de button cela fonctionne mais il me dirigera vers la page2 même si le formualire n'est pas correctement remplit ! (peut être existe -t-il une fonction qui empêche d'envoyer ?)
Merci !
L'utilisateur doit remplir un formulaire. je verifie ce formulaire avec une fonction js. Voila le code HTML et le js qui vérifie si le formulaire est correctement remplit :
<script language="JavaScript"> function VerifForm(formulaire) { if (.................................) { document.monform.submit(); } else { alert("Formulaire non complété intégralement !"); } } </script> <form action="page2.php" method="POST" name="monform"> /* differents input type */ <input type="button" value="Créer" name="creer" onClick="VerifSelect(this)" /> </form>
et sur ma page2.php j'aimerais qu'il effectue les opérations si on clique sur ce bouton
if(!empty($_POST['creer'])) { echo 'c ok '; }
Mais cela ne fonctionne pas. Biensur en mettant un input type submit à la place de button cela fonctionne mais il me dirigera vers la page2 même si le formualire n'est pas correctement remplit ! (peut être existe -t-il une fonction qui empêche d'envoyer ?)
Merci !
A voir également:
- [javascript] button
- Telecharger javascript - Télécharger - Langages
- Javascript arrondi ✓ - Forum Javascript
- Javascript void 0 c'est quoi ✓ - Forum Réseaux sociaux
- My button is set - Forum Téléviseurs
- Power button lockout ✓ - Forum Matériel & Système
3 réponses
Oui
et ta fct JS:
<form action="page2.php" method="POST" name="monform" onSubmit="return VerifForm('monform');"> /* differents input type */ <input type="Submit" value="Créer" name="creer" /> </form>
et ta fct JS:
<script language="JavaScript"> function VerifForm(formulaire) { if (champ1 pas bon) { alert("Champ1 mal rempli !"); return false; } //tu peux répéter ce test if autant de fois que tu as de champs return true; } </script> si la fct retourne false (pas bon) le formulaire ne sera pas envoyé si tout bon elle retourne true donc il part
Salut,
je te propose la version "DOM level 2", libre à toi de l'adopter ou pas. Si tu trouves ça trop prise de tête, laisse béton, je t'en voudrai pas :P
Doc : http://www.w3.org/TR/DOM-Level-2-Events/events.html#Events-eventgroupings-htmlevents
On s'intéresse à l'évènement submit.
On l'attache comme suit (ne marche pas sous IE) :
Il faut avoir (au préalable) défini une fonction verifierForm() :
La méthode e.preventDefault() annule la soumission du formulaire.
Et j'ai les codes équivalents pour IE, si ça te branche tu me demandes ;)
je te propose la version "DOM level 2", libre à toi de l'adopter ou pas. Si tu trouves ça trop prise de tête, laisse béton, je t'en voudrai pas :P
Doc : http://www.w3.org/TR/DOM-Level-2-Events/events.html#Events-eventgroupings-htmlevents
On s'intéresse à l'évènement submit.
On l'attache comme suit (ne marche pas sous IE) :
document.getElementById('monForm').addEventListener('submit', verifierForm, false);
Il faut avoir (au préalable) défini une fonction verifierForm() :
function verifierForm(e) { // l'évènement est passé en argument if ( ...form non complet... ) { alert('pas bien'); e.preventDefault(); } }
La méthode e.preventDefault() annule la soumission du formulaire.
Et j'ai les codes équivalents pour IE, si ça te branche tu me demandes ;)
petite erreur pour tester il ==
essayes comme ça:
Si vous êtes familiers avec ce genre d'erreur, faites :
Ainsi, si vous ouliez un "=", ça génère une erreur et vous voyez tout de suite où est le problème !
Autre méthode, utiliser l'équivalence booléenne : si test1 est une chaîne vide, dans le if il prendra la valeur false. Il suffit donc de tester : Plus simple, tu meurs ...