[JS] Interdire la saisie de certains car. ds une TEXTBOX

Interdire la saisie de certains car. ds une TEXTBOX [JS] - Programmation

Marsh Posté le 13-06-2002 à 12:32:55    

Salut
 
je dois interdire à mes utilisateurs de saisir des caractères autres que a->z , 0 -> 9 et espace, shift+5 (pour faire 5)...
 
le tout ds une input text HTML ! Comment puis-je le faire ?
 
J'ai recherché sur ce forum et j'ai même cru trouver un début de soluce mais RIEN :(
 
En fait, j'ai fait un JS sur OnKeyDown mais le prob c que l'ajout du du car. tapé s'effectue après le JS ! (tiens donc j'ai pas essayé OnKeyUp !)
 
Please Help !
 
Une soluce serait aussi de me donner la valeur window.event.keyCode qui ne fait RIEN :)
 
Merci
a+

Reply

Marsh Posté le 13-06-2002 à 12:32:55   

Reply

Marsh Posté le 13-06-2002 à 13:05:04    

>> Une soluce serait aussi de me donner la valeur window.event.keyCode qui ne fait RIEN :)  
 
:??:
 
en js, tout événement que tu traites (onmouseover, onkeydown, etc.) doit renvoyer un code de retour. si ce code est 'true', le message est traité après par le navigateur (donc par ex l'insertion de caractères dans l'input), si c'est 'false', le navigateur ne fait rien de son côté et si le code n'est pas précisé, le navigateur considère que tu as renvoyé 'true'. donc si tu fais :
 
<input onkeydown='return false;'>  
 
tu ne pourras taper aucun caractère dans ton input. tu peux déléguer ce boulot à une fonction qui se chargera de tester les codes clavier. il suffira alors de retourner son code de retour à la balise :
 
<input onkeydown='return processInput();'>
 
tu peux ensuite tester dans cette fonction le code clavier avec event.keyCode (qui ne marche sous ie je crois bien) :
 
function processInput()
{
  // interdiction d'utiliser les lettres  
  if (event.keyCode >= 65 && event.keyCode <= 90) return false;
  return true;
}

Reply

Marsh Posté le 13-06-2002 à 15:35:09    

J'ai merdé sévère là  :lol:  
 
un mot :
 
GENIAL !
 
 
 
merci et a+
 
 :hello:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed