Bonjour,

j'ai ecris une fonction javascript , qui ne permet l'ecriture que de certain caractéres, elle capture le code ascii de la touche et en fonction de ce code je fais mon test,

mon problème se pose dans le cas des fleshes directionnel (haus bas droite gauche ) il sont concidéré comme des caractéres interdits meme si je ne lés mentionne pas parmis ceux ci
et ce probleme ne se pose que dans le cas de firefox ,sur internet explorer ca marche trés bien

voici la fonction javascript que j'utilise

et merci pour votre aide

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
function gestionInterdictionCaractereSpeciaux(evenement,evt,idError){
 
 var tabCodeAsciiCar =		 [1, 2, 3, 4, 5, 6, 7,9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
                25, 26, 27, 28, 29, 30, 31, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,47, 59, 60, 61, 62, 63,
                64, 91, 92, 93, 94, 95, 96, 123, 124, 125, 126, 127, 128, 129, 131, 132, 133, 134, 135, 136, 137, 138,
                139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158,
                159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178,
                179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198,
                199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218,
                219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238,
                239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256 ];
 
		 var found = false;
		 var i = 0;
		 var divErrorMessage = document.getElementById(idError);
		 var keyCode = evt.which ? evt.which : evt.keyCode;
		 while( i < tabCodeAsciiCar.length && found == false ) {
 
		 		 if (keyCode == tabCodeAsciiCar[i] ) {
		 		   divErrorMessage.style.display="block";
		 		 	 found = true;
		 		 		 // blocage de la saisie en fonction du navigateur MSIE ou DOM
		 		 		 if(evt.which) {
 
		 		 		 		 evt.returnValue = false;
 
		 		 		 		 evt.cancelBubble = true;
 
		 		 		 		evt.preventDefault();
		 		 		 		evt.stopPropagation();
		 		 		 } else {
		 		 		 evt.returnValue = false;
		 		 		 evt.cancelBubble = true;
 
		 		 		 }
		 		 } else {
		 		 	 divErrorMessage.style.display="none";
		 		 }    
        i++;
   }
 
}