Programmation Web en javascript

Résolu
Bonjour,
je suis entrain de réaliser une application web et voici un bout du code où j'ai trouvé des difficultés pour le terminer:

<html>
<head>
<title>mot de passe</title>
</head>
<body>
<form name=f2 action=traitement.php method=post>
<h4><font color=red><u><b>Mot de passe oublié?</b></u></h4>
<h4><font color=blue>Entrez votre adresse courriel et cliquer sur <font color=red>"Réinitialisation du mot de passe".<font color=blue>Vous recevrez un courriel ayant un lien pour réinitialiser votre mot de passe.</h4><br>
<font color=blue><b>Adresse Courriel:</b><br>
<input type=text name=adresse> <br><br>
<input type="button" value="Réinitialiser mot de passe" OnClick=déplacer() ><font color=red></a><br>
</form>
<script language="javascript">
function déplacer()
{
var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
var address = document.f2.adresse.value;
if(reg.test(address) == true) {
window.location=réinitialisation1.html;
else
alert('Adresse Invalide!');
}
}
</script>
</body>
</html>

Au fait je cherche à contôler la validité de l'adresse mail saisie et si c'est le cas, on passe automatiquement vers une autre interface mais ça ne marche pas. pouvez vous m'aider?

2 réponses

  1. <html>
    <head>
    <title>mot de passe</title>
    </head>
    <body>
    <form name=f2 action=réinitialisation1.html method=post OnSubmit=déplacer()>
    <h4><font color=red><u><b>Mot de passe oublié?</b></u></h4>
    <h4><font color=blue>Entrez votre adresse courriel et cliquer sur <font color=red>"Réinitialisation du mot de passe".<font color=blue>Vous recevrez un courriel ayant un lien pour réinitialiser votre mot de passe.</h4><br>
    <font color=blue><b>Adresse Courriel:</b><br>
    <input type=text name=adresse> <br><br>
    <input type="submit" value="Réinitialiser mot de passe" ><font color=red></a><br>
    </form>
    <script language="javascript">
    function déplacer()
    {
    var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
    var address = document.f2.adresse.value;
    if(reg.test(address) == true) {
    return true;
    else
    alert('Adresse Invalide!');
    return false;
    }
    }
    </script>
    </body>
    </html>

    a tester... je suis pas trop sur de moi sur le return false mais faut voir. je craint que ca ne redirige vers réinitialisation1.html quand meme.
    1. bon ça marche seulement, il n'y a plus de contôle sur l'adresse saisie! en d'autres termes, même si l'utilisateur ne saisit pas son @ valide, il peut passer à la page de réinitialisation.
    2. ah donc ca marche pas.

      ce que j'ai changé c'est juste que ta fonction est appelé lorsque le formulaire est validé ce qui facilite la sortie. mais ta fonction doit tout de même remplir son rôle.

      vérifie que tu passe bien dans une branche du if...else avec des alert().

      if(reg.test(address) == true) {
      alert('toto');
      return true;
      else
      alert('Adresse Invalide!');
      return false;

      si tu ne passe dans aucun des deux, tu dois avoir des erreurs javascript (console d'erreur de ton navigateur). je n' ai pas testé le code que j'ai posté donc c'est possible que des erreurs de syntaxe s'y trouvent
    3. c'est bon, j'ai juste oublié une accolade. merci bcp pour ton aide. :)
    4. de rien =)

      bonne journée
    5. bonne journée :)
  2. Bonjour,

    petite question, tu ne valides jamais ton formulaire?

    <form name=f2 action=traitement.php method=post>

    la page traitement.php n'est jamais appelée vue que si tout est bon tu est sensé aller sur réinitialisation1.html grace à:

    window.location=réinitialisation1.html;

    peut tu etre un peu plus précis sur ton problème? que ce passe-t-il a l'heure actuelle avec ce code et qu'aimerait tu qu'il se passe?

    1. bonjour, actuellement ce code ne me mène à rien et moi je voudrais qu'une fois, l'adresse mail validée, il me tranfère à la page de réinitialisation pour permettre à l'utilisateur de saisir son nouveau mot de passe.