boite dialogue oui/non

Eléphant du PHP | 108 Messages

30 oct. 2006, 13:04

bonjour,

j'ai un petit souci de fonctionnement avec la boite de dialogue "confirm"
<script type="text/javascript" language="javascript">
function Confirmation()
{
if (confirm("Etes-vous sûr de vouloir valider?")) {
    this.form.submit();
	
  }
  
}

</script>
<form method="post" name="formBoutons" action="fiche_materiel_validation.php">
<input type="submit" name="valider" value="valider" class="bouton" OnClick="Confirmation();" />
<input type="submit" name="annuler" value="annuler" class="bouton" /></form>
je ne trouve pas comment faire que quand je clique sur non , il me valide pas mon formulaire :?

Merci de toute l'aide que vous pourrez m'apporter! :)

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

30 oct. 2006, 13:12

Du fait d'utiliser un bouton de type submit tu vas automatiquement envoyer le formulaire. Ton "this.form.submit();" ne sert donc à rien (qui plus est, la syntaxe n'est pas bonne, "this" et "form" ne correspondent à rien dans ta fonction)

Il te faut donc soit passer par un input de type "button" qui n'envera pas le formulaire et laissera ce soin à ta fonction (une fois corrigée ;)).
Soit ajouter l'attribut "onSubmit" dans ta balise form, et c'est à ce moment là que tu fera appel à ta fonction de contrôle. Celle-ci doit alors retourner "true" pour que le formulaire soit envoyé, ou "false" pour interrompre l'envoi :)

Nota : le onSubmit ne s'exécute que lorsqu'un bouton submit a été cliquer. L'appelle à la fonction document.nomFormulaire.submit() n'entrainera pas cette action :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphant du PHP | 108 Messages

30 oct. 2006, 13:12

j'ai changer ma ligne en
<input type="submit" name="valider" value="valider" class="bouton" OnClick="return confirm('Etes-vous sûr de vouloir valider?')" />
et ca fonctionne

je suis un tout petit breton (dixit: eric dans la tour Montparnasse Infernale) :D