2015-03-02 5 views
0

J'utilise un clavier QWERTZ-et que vous voulez écrire un script de validation pour un champ de saisie de texte. Malheureusement, peu importe ce que j'essaie de suivre les chars apparaissent encore dans Chrome:^et 'même si je laisse juste quelques touches et utilise e.preventDefault() pour les autres.validation sur le terrain avec des fonctions d'entrée keycode ne fonctionne pas comme prévu en chrome

J'ai aussi essayé de ne pas laisser capslock avec cette déclaration

if(e.originalEvent.getModifierState("CapsLock")==true) 

mais dans la console Chrome avec capsLock actif, il retourne toujours faux.

Dans Firefox, tout fonctionne très bien. Quelle est la raison de cela et comment pourrais-je résoudre ce problème?

Répondre

0

En jQuery:

$('#yourInputText').keypress(function(e) { // or catch any other event you want 
    var s = String.fromCharCode(e.which); 
    if (s.toUpperCase() === s && s.toLowerCase() !== s && !e.shiftKey) { 
     alert('caps is on'); 
    } 
}); 
+0

thx, mais cela ne fonctionne que pour les lettres, pas pour les chiffres et caractères spéciaux. – user2718671