J'utilise actuellement jQuery pour restreindre une zone de texte au numéro d'entrée seulement comme suit:jQuery - Changer le fond du champ de saisie si le texte se remplace
$('input.numbersOnly').keyup(function() {
this.value = this.value.replace(/[^0-9\.]/g,'');
});
Je voudrais informer l'utilisateur que ce ils sont en train d'être rejetés en changeant la couleur d'arrière-plan du champ. Je sais que je peux changer l'arrière-plan d'un champ en utilisant quelque chose comme ceci:
$('input.numbersOnly').addClass('alertClass');
Ma question est, comment puis-je combiner les deux exemples de code ci-dessus afin que la couleur des changements sur le terrain que le personnage est maintenant remplacé ? Mon but est d'alerter l'utilisateur que quelque chose ne va pas dans sa saisie lorsqu'il le tape sur le terrain.
Merci!
Quand faut-alertClass être retiré? – nickf
Que se passe-t-il lorsque l'utilisateur tape "1234a" (qui est réduit à "1234") et passe ensuite au champ suivant? –
Nickf - Je n'y avais pas beaucoup réfléchi, mais la solution de Nick Craver ci-dessous est assez élégante pour que je l'aime bien, alors je vais de l'avant avec sa suggestion. Salman A - Je l'ai défini de sorte que alertClass soit supprimé lorsque l'utilisateur passe au champ suivant. J'ai utilisé le suivant:. \t \t $ ('entrée') focusout (function() { \t \t \t $ (this) .toggleClass ('alertClass', false); \t \t}); Cela fonctionne bien pour ce dont j'ai besoin. – Yazmin