contrôle sur plusieurs champs Input
Bonjour,
j'essaie de faire un contrôle sur plusieurs champs Input, qui ne fonctionne pas très bien !
j'essaie en effet de vérifier à chaque fois que l'on quitte le composant, qu'il n'est pas vide et que sa taille de dépasse pas un certain nombre de caractère:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
function checklength(){
var f= document.forms[0];
var nom=f.elements['nom'].value;
var adresse=f.elements['adresse1'].value;
var adresse2=f.elements['adresse2'].value;
if( nom.length >35)
{
alert("35 caractères maximum pour le champ: <%=res.getKeyValue("nom")%>");
f.elements['nom'].focus();
return;
}
if( adresse.length >28)
{
alert("28 caractères maximum le champ: <%=res.getKeyValue("adresse1")%> ");
f.elements['adresse1'].focus();
return;
}
if( adresse1.length >28)
{
alert("28 caractères maximum pour le champ: <%=res.getKeyValue("adresse2")%>");
f.elements['adresse2'].focus = true;
return;
}
} |
et quand je met la fonction sur un évènement onblur, il ne fonctionne pas dans tous les cas !
Est-ce une bonne façon de procéder !
dois je le faire composant par composant ?
contrôle sur plusieurs champs
pour
Code:
1 2
|
f.elements['adresse2'].focus = true; |
c'est bien une erreur de ma part.
Pour faire le test lorsque je soumet à la form, il ne me parait pas judicieux car il soumettrait tous les tests !
mais bon, je refais quelques tests pour voir le fonctionnement !
meci
contrôle sur plusieurs champs
Code:
1 2
| Envoyé par paolo2002
et quand je met la fonction sur un évènement onblur, il ne fonctionne pas dans tous les cas ! |
pour être plus précis, lorsque je fais directement sur le dernier champ, le contrôle n'est pas pris en compte.
il le fait apparemment successivement !