2010-04-20 12 views
1

Je pensais à une fonction qui vérifie la valeur de la touche pressée, et n'accepte que les caractères les plus communs, canc, enter, ... parce que j'en ai besoin seulement pour basique jeu de caractères ascii (pas ñ, è, caractères chinois, ...).jQuery événement onkeyup dans textarea qui ne se déclenche pas quand rien ne change

Ou fonctionner après chaque contrôle si la valeur a changé.

Mais vraiment jQuery n'a pas de gestionnaire d'événements pour cette situation?

Oh, ça devrait être un croisement.

Répondre

0

Vous pouvez essayer d'annuler des clés, mais elles peuvent simplement coller. Ou pourrait trouver un moyen de définir la valeur via un script. La meilleure chose à faire est de valider que la valeur n'a pas de caractères spéciaux avant qu'ils ne soient envoyés au serveur (ou agi autrement).

+0

Je ne pensais pas à un problème de collage. Vous avez raison à ce sujet. Mais j'ai besoin d'un événement qui se déclenche seulement quand la valeur de textarea est changée. –

0
var oldval = $('textarea').val(); 
$('textarea').live('mouseover', function() { 
    if($(this).val() != oldval) { 
     //do your thing here 

     oldval = $(this).val(); //reassign oldval 
    } 
}); 

Ceci s'activera au survol de la souris et fera ce que vous voulez si la nouvelle valeur n'est pas la même que l'ancienne. Je ne l'ai pas testé mais je pense qu'il devrait aussi couvrir le collage.