JavaScript Alert efface les champs de formulaire

  • devilwood
  • Silver Member
  • Silver Member
  • Avatar de l’utilisateur
  • Inscription: Nov 18, 2007
  • Messages: 429
  • Status: Offline

Message Janvier 6th, 2012, 3:53 pm

J'ai couru tout cela aujourd'hui que je suis manutention quelques validation de formulaire côté client. Généralement, je vérifie tout sur le côté serveur, mais dans le cas présent, j'ai besoin d'utiliser JS. Si un simple rechercher les prénom et nom de voir s'ils sont vides. Si elles sont vides, puis jeter une boîte d'alerte et de définir le focus au champ erreur. Le problème, c'est lorsque j'ai frappé OK dans la fenêtre d'alerte tous les champs sont remplis sont effacés. IVe testé dans IE et Chrome. D'une certaine manière, la page est rafraîchissante et Im manque quelque chose affectant false :

Code: [ Select ]
function validateform(form)
{
    
    if (form.fname.value == "") {
        alert('Please fill in your first name.');
        form.fname.focus();
        return false;
    } else if (form.lname.value == "") {
        alert('Please fill in your last name.');
        form.lname.focus();
        return false;
    } else {
    return true;
    }
}


<form name="maxform" method="POST" action="" onsubmit="" >
        <input type="text" name='fname' id="first_name" size="20"><br>
        <input type="text" name='lname' id="last_name" size="20"><br>
        <input type="text" name='email' id="email" size="20"><br>
        <input type="submit" value="Submit" name="Submit" onClick="validateform(this.form)" />
</form>
  1. function validateform(form)
  2. {
  3.     
  4.     if (form.fname.value == "") {
  5.         alert('Please fill in your first name.');
  6.         form.fname.focus();
  7.         return false;
  8.     } else if (form.lname.value == "") {
  9.         alert('Please fill in your last name.');
  10.         form.lname.focus();
  11.         return false;
  12.     } else {
  13.     return true;
  14.     }
  15. }
  16. <form name="maxform" method="POST" action="" onsubmit="" >
  17.         <input type="text" name='fname' id="first_name" size="20"><br>
  18.         <input type="text" name='lname' id="last_name" size="20"><br>
  19.         <input type="text" name='email' id="email" size="20"><br>
  20.         <input type="submit" value="Submit" name="Submit" onClick="validateform(this.form)" />
  21. </form>



Si j'ajoute onsubmit = « retourner false » puis quand je clique sur soumettre j'obtiens validation de formulaire et si j'obtiens une alerte zone et cliquez sur OK puis de tous les autres champs restent remplis. Cependant, onsubmit est défini sur false, afin que le formulaire ne soumet pas même lorsque validateform passe afin que soit ne fonctionne pas. C'est où la page doit être rafraîchissante, mais je ne peux pas semble garder les champs qui sont déjà remplis.
  • Anonymous
  • Bot
  • No Avatar
  • Inscription: 25 Feb 2008
  • Messages: ?
  • Loc: Ozzuland
  • Status: Online

Message Janvier 6th, 2012, 3:53 pm

  • ocbohye
  • Born
  • Born
  • No Avatar
  • Inscription: Jan 08, 2012
  • Messages: 2
  • Status: Offline

Message Janvier 8th, 2012, 8:01 pm

Cela se produit parce que le formulaire obtient soumis. Vous devez l'arrêter avant de faire cela.

Essayez de définir la JS dans onsubmit.

Changer cela

&lt; formulaire nom = méthode "maxform" = "POST" action = "" onsubmit="validateform(this);" &gt;
&lt; input type = « text » name = « fname » id = « prenom » size = « 20 » &gt;&lt; br &gt;
&lt; input type = « text » name = « lname » id = « last_name » size = « 20 » &gt;&lt; br &gt;
&lt; input type = « text » name = « Courriel » id = « Courriel » size = « 20 » &gt;&lt; br &gt;
&lt; input type = « submit » value = « Soumettre » name = « Soumettre » / &gt;
&lt;/form&gt;
  • Carrotbob
  • Born
  • Born
  • No Avatar
  • Inscription: Jan 09, 2012
  • Messages: 1
  • Status: Offline

Message Janvier 9th, 2012, 7:38 am

Je me souviens il y avait un réel bon article à ce sujet dans un récent numéro du Journal de développeurs de logiciels. Vous pouvez wanna vérifier leur site SDJ

Cheers
  • devilwood
  • Silver Member
  • Silver Member
  • Avatar de l’utilisateur
  • Inscription: Nov 18, 2007
  • Messages: 429
  • Status: Offline

Message Janvier 23rd, 2012, 7:38 pm

Je n'ai pas encore trouvé l'article sur SDJ a quelques recherches. Im going pour maintenir à quand j'ai eu plus de temps.

J'ai reçu le formulaire redressé il. Malheureusement, elle a subi plusieurs modifications et Ive été enveloppé avec une tonne de choses, mais la méthode onsubmit par ocbohye devrait fonctionner. Cependant, mon travail a changé beaucoup puisque ce poste que ce n'est pas encore le même. J'ai fini par relancer une tonne de choses. Cependant, je tiens à dire que la façon correcte mentionnée encore ne travaillait pas à mes fins. Merci pour les réponses, mais son savoir un point théorique pour moi. Je ne veux pas essayer de trouver cet article car il semble que certaines questions avec validation de formulaire à l'aide de nos jours de JS.

Afficher de l'information

  • Total des messages de ce sujet: 4 messages
  • Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 117 invités
  • Vous ne pouvez pas poster de nouveaux sujets
  • Vous ne pouvez pas répondre aux sujets
  • Vous ne pouvez pas éditer vos messages
  • Vous ne pouvez pas supprimer vos messages
  • Vous ne pouvez pas joindre des fichiers
 
 

© 2011 Unmelted, LLC. Ozzu® est une marque déposée de Unmelted, LLC