Script n'exécute pas

black_heart Messages postés 412 Statut Membre -  
kadeh Messages postés 341 Statut Membre -
Bonjour,

elle ne veux pas fonctionner priére donner moi une solution en la corrigeant merci d'avance

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>ins</title>
</head>
<script language="JavaScript">
function verif()
{
var message='' ;
if (document.f1.nom.value=''||document.f1.pre.value=''||document.f1.sexe.value=''||document.f1.age.age=''||document.f1.mail.value=''||document.f1.pass.value=''||document.f1.pays.value='') ;
message=message+'Ces champs sont incorrecte' ;
if(document.f1.nom.value=="")message=message+'\n-Nom invalide' ;
if(document.f1.pre.value="")message=message+'\n-Prénom invalide' ;
if(document.f1.sex[0].checked==false && document.f1.sex[1].checked==false) message=message+'\n -Cochez une case svp ' ) ;
var a=document.f1.age.value;
if(a.value=="")message=message+'\n - Age incorrect') ;
if(a>18||a<20) message=mesage+'\n - Age doit comporter de 18 à 20 ' ;
if(isNaN(a))message=message+'\n -Lage c du chiffre' ;
if(document.f1.mail.indexOf('@')==-1 || document.f.mail.indexOf('.')==-1) message=message+'n\- Mail invalide' ;
if(document.f1.pass.value=="") message=message+'\n-Mot de passe obligatoire' ;
if(document.f1.pays.options.selectIndex==3)message=message+'\n - Selectionnez un choix' ;
if (message=='') return true ;
else {alert(message) ;}
}

</script>
<body onLoad="alert('Bienvenue au site web Technologies de l''information et de la communication')" onUnload="confirm('Merci pour votre visite')">

<b><center> <h1> Inscription </h1></center></b>
<br />
<form name="f1">
<table border="2">
<tr>
<td> <b> Nom : </b></td><td> <input type="text" size="20" name="nom" /></td></tr>
<tr>
<td> <b> Prenom : </b></td><td> <input type="text" size="20" name="pre" /></td></tr>
<tr>
<td> <b> Sexe : </b> </td><td> Femme<input type="radio" size="20" name="sex" value="f" /> Homme<input type="radio" size="20" name="sex" value="h"/></td></tr>

<tr>
<td> <b> Age : </b></td><td> <input type="text" size="5" name="age" /></td></tr>
<tr><td> <b> Adresse Mail :</b></td><td><input type="text" size="20" name="mail" /></td></tr>
<tr>
<td> <b> Mot de passe </b></td> <td> <input type="password" size="20" name="pass" /></td></tr>
<tr>
<td> <b> Pays : </b></td> <td> <select name="pays"> <option value="tunise" > Tunisie </option>
<option value="France"> France </option>
<option value="usa"> USA </option>
<option selected="selected" value="usa"> Selectionner un choi :: </option>
</select></td></tr>
<tr>
<td rowspan="3"> <b> Niveaux : </b> </td><td> <input type="checkbox" name="n1" /> <b> Niveau 1 </b></td></tr>
<tr>
<td> <input type="checkbox" name="n2" /> <b> Niveau 2</b></td></tr>
<tr>
<td> <input type="checkbox" name="n3" /> <b> Niveau 3 </b></td></tr>
<tr>
<td> <b>Commentaire: </b> </td> <td> <textarea name="com"> </textarea></td></tr>

<tr><td><input type="button" value="Envoyer" name="env" onMouseOver="verif()"/> </td> <td><input type="reset" value="Annuler" name="an" /></td>

</table></form>
</body>
</html>

2 réponses

  1. kadeh Messages postés 341 Statut Membre 92
     
    Bonjour,

    - premièrement essayez de respecter les règles (utilisez la balise code pour mettre du code source)
    - pour vérifier les données une fois le formulaire soumis on utilise l'évènement "onclick" sur le bouton de soumission et pas "onMouseOver", ou on utilise l'évenement "onsubmit":
    <form name="myform" action="validation.php" onsubmit="verif()">

    - après "if" il n'y a pas de point-virgule:
    if (condition){
       //traitement 1
    }else {
       // traitement 2
    }
    validation de formulaire en javascript
    bonne chance!
    0
    1. black_heart Messages postés 412 Statut Membre 20
       
      avez vous tester ??
      0
    2. black_heart Messages postés 412 Statut Membre 20
       
      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
      <title>ins</title>
      </head>
      <script language="JavaScript">
      function verif()
      {
      var message='' ;
      if (document.f1.nom.value=''||document.f1.pre.value=''||document.f1.sexe.value=''||document.f1.age.age=''||document.f1.mail.value=''||document.f1.pass.value=''||document.f1.pays.value='') ;
      message=message+'Ces champs sont incorrecte' ;
      if(document.f1.nom.value=="")message=message+'\n-Nom invalide' ;
      if(document.f1.pre.value="")message=message+'\n-Prénom invalide' ;
      if(document.f1.sex[0].checked==false && document.f1.sex[1].checked==false) message=message+'\n -Cochez une case svp ' ) ;
      var a=document.f1.age.value;
      if(a.value=="")message=message+'\n - Age incorrect') ;
      if(a>18||a<20) message=mesage+'\n - Age doit comporter de 18 à 20 ' ;
      if(isNaN(a))message=message+'\n -Lage c du chiffre' ;
      if(document.f1.mail.indexOf('@')==-1 || document.f.mail.indexOf('.')==-1) message=message+'n\- Mail invalide' ;
      if(document.f1.pass.value=="") message=message+'\n-Mot de passe obligatoire' ;
      if(document.f1.pays.options.selectIndex==3)message=message+'\n - Selectionnez un choix' ;
      if (message=='') return true
      else {alert(message) ;}
      }

      </script>
      <body onLoad="alert('Bienvenue au site web Technologies de l''information et de la communication')" onUnload="confirm('Merci pour votre visite')">

      <b><center> <h1> Inscription </h1></center></b>
      <br />
      <form name="f1"onsubmit="verif();">
      <table border="2">
      <tr>
      <td> <b> Nom : </b></td><td> <input type="text" size="20" name="nom" /></td></tr>
      <tr>
      <td> <b> Prenom : </b></td><td> <input type="text" size="20" name="pre" /></td></tr>
      <tr>
      <td> <b> Sexe : </b> </td><td> Femme<input type="radio" size="20" name="sex" value="f" /> Homme<input type="radio" size="20" name="sex" value="h"/></td></tr>

      <tr>
      <td> <b> Age : </b></td><td> <input type="text" size="5" name="age" /></td></tr>
      <tr><td> <b> Adresse Mail :</b></td><td><input type="text" size="20" name="mail" /></td></tr>
      <tr>
      <td> <b> Mot de passe </b></td> <td> <input type="password" size="20" name="pass" /></td></tr>
      <tr>
      <td> <b> Pays : </b></td> <td> <select name="pays"> <option value="tunise" > Tunisie </option>
      <option value="France"> France </option>
      <option value="usa"> USA </option>
      <option selected="selected" value="usa"> Selectionner un choi :: </option>
      </select></td></tr>
      <tr>
      <td rowspan="3"> <b> Niveaux : </b> </td><td> <input type="checkbox" name="n1" /> <b> Niveau 1 </b></td></tr>
      <tr>
      <td> <input type="checkbox" name="n2" /> <b> Niveau 2</b></td></tr>
      <tr>
      <td> <input type="checkbox" name="n3" /> <b> Niveau 3 </b></td></tr>
      <tr>
      <td> <b>Commentaire: </b> </td> <td> <textarea name="com"> </textarea></td></tr>

      <tr><td><input type="button" value="Envoyer" name="env" onclick="verif()"/> </td> <td><input type="reset" value="Annuler" name="an" /></td>

      </table></form>
      </body>
      </html>
      0
  2. kadeh Messages postés 341 Statut Membre 92
     
    Bonjour,

    une seule verification pas deux:
    onclick="verif()" ou bien onsubmit="verif();"

    je répète une autre fois:
    - après "if" il n'y a pas de point-virgule:
    if (condition){  
       //traitement 1  
    }else {  
       // traitement 2  
    }
    donc remplace:
    if (document.f1.nom.value='' || document.f1.pre.value='' || document.f1.sexe.value='' || document.f1.age.age=''|| document.f1.mail.value='' || document.f1.pass.value='' || document.f1.pays.value='') ;
    par :
    if (document.f1.nom.value='' || document.f1.pre.value='' || document.f1.sexe.value='' || document.f1.age.age=''|| document.f1.mail.value='' || document.f1.pass.value='' || document.f1.pays.value='') /*; c'est ce point-virgule qui pose le problème*/


    Edit: javascript ne suffit pas pour la validation des données saisies, il faut le faire en php (pour être sur que tout va bien même si javascript est désactivé)
    @+
    0