Validation de champs vide javascirpt

Bonjour,
j'ai fais une fonction pour valider les champs d'un formulaire ... cette fonction doit s'assurer que les champs ne sont pas vides, mais voila ca ne fonctionne pas.. quelqu'un pourrais m'aider à trouver l'erreur merci d'avance..

FONCTION DE TEST:

<script language="javascript" type="text/javascript">

function test() {
var champ =document.forms[0].champ.value;
if(test.value == '' ) {
input.focus();
alert('Le champ ' + champ.name + 'ne doit pas être vide.');
return false;
}
return true;
}

</script>

FORMULAIRE

<form onSubmit="return test()">
<table style="width: 60%" align="center" >
<tr>
<td><strong>Nom du jeu : </strong></td>
<td><input type="text" name="nom" size="30"/></td>
</tr>
<tr>
<td><strong>Fabricant :</strong></td>
<td><input type="text" name="fab" size="30"/></td>
</tr>
<tr>
<td>&nbsp</td>
<td><input type="checkbox" name="every" />E : Everyone</td>

</tr>
<tr>
<td><strong>Cote :</strong></td>
<td><input type="checkbox" name="teen" />T : Teen</td>

</tr>
<tr>
<td>&nbsp</td>
<td><input type="checkbox" name="mature" />M : Mature</td>

</tr>
<tr>
<td>&nbsp</td>
<td bgcolor="silver"><strong>Console</strong></td>
<td bgcolor="silver"><strong>Prix</strong></td>
</tr>
<tr>
<td>&nbsp</td>
<td><input type="checkbox" name="ninds" />NDS</td>
<td><input type="text" name="nindstext" /></td>

</tr>
<tr>
<td>&nbsp</td>
<td><input type="checkbox" name="play2"/>PS2</td>
<td><input type="text"name="playstext2" /></td>

</tr>
<tr>
<td><strong>Disponible sur :</strong></td>
<td><input type="checkbox" name="play3" />PS3</td>
<td><input type="text" name="playstext3"/></td>

</tr>
<tr>
<td>&nbsp</td>
<td><input type="checkbox" name="pspx"/>PSP</td>
<td><input type="text" name="psptext"/></td>

</tr>
<tr>
<td>&nbsp</td>
<td><input type="checkbox" name="xb360"/>X360</td>
<td><input type="text" name="xb360text"/></td>

</tr>
<tr>
<td>&nbsp</td>
<td><input type="checkbox" name="wiimom" />WII</td>
<td><input type="text"name="wiitext" n/></td>

</tr>

<tr>
<td>&nbsp</td>
<td><input type="submit" value="Soumettre" name="bouttonS"/><td>
<td><input type="reset" value="Rétablir" name="bouttonR"/><td>
</tr>
<tr>
<td><input type="button" value="Auteur" name="boutonA" <a href="javascript:;"
onClick="window.alert('Auteur : Geneviève Hénault');"></a> </td>
</tr>
</table>
</form>
Configuration: Windows XP
Internet Explorer 7.0

1 réponse

  • Votes
  • Date
  • Date décroissante
  1. Bonjour,

    Ton problème vient de là :

    - D'abord, tu dois nommer ton formulaire, c'est plus pratique pour l'utiliser :

    <form name='myform' onSubmit="return test()">


    - Ensuite, tu dois changer ta fonction :

    function test() {
    var champs =document.myform.nom;
    if(champs.value == '' ) {
    champs.focus(); 
    alert('Le champ ' + champs.name + ' ne doit pas être vide.');
    return false;
    }
    return true;
    } 
    


    Ça ne vérifie que le champs nom, il faut le faire pour chaque champs.

    Tu peux aussi faire :