jQuery zone de texte de longueur max de validation
J'ai le code suivant qui fonctionne bien, mais le problème est qu'après avoir dépassé les 500 caractères, il commence à permettre à l'utilisateur de taper (il accepte les personnages plutôt que de se limiter à eux!).
Comment puis-je la modifier? Est-il possible de généraliser ce code de sorte qu'il peut gérer plusieurs zones de texte, comme une fonction et vient de passer les paramètres?
$('#txtAboutMe').keyup(function () {
var text = $(this).val();
var textLength = text.length;`enter code here`
if (text.length > maxLength) {
$(this).val(text.substring(0, (maxLength)));
alert("Sorry, you only " + maxLength + " characters are allowed");
}
else {
//alert("Required Min. 500 characters");
}
});"
J'ai toujours pensé que seuls les types d'entrée d'accepter une maxlength ?
c'est pourquoi il veut le faire pour les textarea
Pouvez-vous poster le HTML concernés?
mais la recherche stackoverflow il y a beaucoup de jquery solutions de fo.
oui u droit textarea est un type d'entrée seulement
c'est pourquoi il veut le faire pour les textarea
Pouvez-vous poster le HTML concernés?
mais la recherche stackoverflow il y a beaucoup de jquery solutions de fo.
oui u droit textarea est un type d'entrée seulement
OriginalL'auteur Tan | 2011-07-29
Vous devez vous connecter pour publier un commentaire.
Vous pouvez essayer de définir un maxLength être utilisé pour comparer (si ce n'est pas définie est égale à pas défini et chaque nombre est plus que indéfini: c'est pourquoi vous nevere obtenir l'alerte, je pense):
$(this).val(...)
sur certains navigateurs permettent de déplacer le curseur.OriginalL'auteur Nicola Peluchetti
Vous ne devriez pas le faire sur
keyup
. Essayezkeypress
à la place. Le problème est surkeyup
le personnage a déjà été déclenchée et écrit à textarea. Voici un bon tutoriel. Avis de l'événement keypress.posté quelque chose que vous pouvez utiliser pour tous les navigateurs. Note sur l'opéra seule pression de touche est autorisé à annuler et keydown ne fonctionne pas. J'espère que cela a aidé. Découvrez le tutoriel pour plus d'aide.
n'oubliez pas d'accepter une réponse.
C'est super, mais "13" ne devrait pas être une clé pour l'ignorer. Qui vous permet d'entrer un nombre infini de retours chariot. Je m'attends à ce que la "longueur maximale" comprend le transport de retour/de ligne de flux.
OriginalL'auteur Amir Raminfar
La solution est de deux ordres:
utilisation preventDefault pour arrêter la lettre d'être inséré
});
OriginalL'auteur user2918522