Paramètres pour événement onkeypress
Bonjour,
Je ne sais pas encore si c'est un bug de JavaScript mais je ne trouve pas de solution.
Voici le problème :
Chaque champ d'un tableau (balise input) est identifiée de manière unique. L'événement onkeypress d'un champ appelle une fonction avec 3 arguments :
- l'identifiant du champ,
- le type de données,
- le nb. de champs sur la ligne.
Cette fonction a pour but de contrôler ce qui est saisi suivant le type de données, créer une nouvelle ligne en fin de tableau lorsquei l'utilisateur appuie sur la touche Entrée dans le dernier champ de la dernière ligne du tableau, etc.
Pour que cette fonction s'applique également sur les nouveaux champs créés, il est nécessaire de la déclarer dans le propriété onkeypress de ces derniers.
La fonction est comme suit :
Code:
1 2 3 4 5 6 7 8 9 10 11
| function CheckField(FieldId, DataType, CountField)
{
...
/** Déclaration de la fonction gérant l'événement onkeypress pour chacun des champs créés **/
for (i=0; i < CountField; i++)
{
NewFieldId=exp + " . " + i;
NewField.onkeypress=function onkeypress (event) {return CheckField(NewFieldId, "varchar", CountField)};
}
...
} |
Lors de l'exécution, au lieu que l'argument NewFieldId soit différent pour chaque champ, il sera = FieldName + (CountField - 1) pour tous les champs.
Par exemple, si CountField=3 et exp="champ" :
- l'argument FieldId de la fonction CheckField pour chaque champ sera égal à exp2, exp2, exp2 au lieu de exp0, exp1, exp2.
Merci pour vos réponses.