Comment puis-je obtenir la longueur du texte entré dans une zone de texte à l'aide de jQuery?

138

Comment puis-je obtenir la longueur du texte entré dans une zone de texte à l'aide de jQuery?

Blankman
la source
1
Parfois, «essayer» signifie googler.
zundi
2
@sandy I get this from Googling ..;)
ihsan
1
@Qwerty J'ai cherché la même question sur Google et j'ai obtenu cette page.
Izzy
@Izzy C'est très bien, puisque cette question est assez ancienne pour apparaître dans les résultats Google. Par là, je vous présente l'un des vampires d'aide les plus connus de SO.
Qwerty

Réponses:

320
var myLength = $("#myTextbox").val().length;
Yfeldblum
la source
13
Pour une grande justice ~
Vael Victus
104

Si votre zone de texte a un attribut id "mytextbox", vous pouvez obtenir la longueur comme ceci:

var myLength = $("#mytextbox").val().length;
  • $("#mytextbox") trouve la zone de texte par son identifiant.
  • .val() obtient la valeur de l'élément d'entrée entré par l'utilisateur, qui est une chaîne.
  • .length obtient le nombre de caractères de la chaîne.
Jonathan Tran
la source
27
Votez parce que vous avez expliqué ce que tout cela fait, pas jsut fourni le code.
Si votre champ de texte n'a pas d'identifiant, vous pouvez le référencer par son nom. Do a$("input[name='myinputname']").val().length;
TARKUS
10

Pour moi, ce n'est pas une zone de texte, c'est une balise span et cela a fonctionné pour moi.

var len = $("span").text().length;
Rohith
la source
3

Le code mentionné ci-dessous fonctionne parfaitement pour prendre la longueur de tous les caractères saisis dans la zone de texte.

$("#Texboxid").val().length;

Aqib Shehzad
la source
2

CODE

$('#montant-total-prevu').on("change", function() {

var taille = $('#montant-total-prevu').val().length;

    if (taille > 9) {

//TODO

}

});
Fadid
la source
1

Vous devez uniquement saisir l'élément avec un sélecteur jQuery approprié, puis la .val()méthode pour obtenir la chaîne contenue dans la zone de texte d'entrée, puis appeler le .lengthsur cette chaîne.

$('input:text').val().length

Cependant, sachez que si le sélecteur correspond à plusieurs entrées, .val()ne renverra que la valeur de la première zone de texte. Vous pouvez également modifier le sélecteur pour obtenir un élément plus spécifique, mais gardez le :textpour vous assurer qu'il s'agit d'une zone de texte d'entrée.

Sur une autre note, pour obtenir la longueur d'une chaîne contenue dans un autre élément non-input, vous pouvez utiliser la .text()fonction pour obtenir la chaîne, puis l' utiliser .lengthsur cette chaîne pour trouver sa longueur.

Daveslab
la source
1
-1 Vous vous trompez, il ne renvoie que la longueur de la toute première valeur de la zone de saisie. jsfiddle.net/8Khzf
nyuszika7h
Merci beaucoup. C'est utile. J'apprends une nouvelle façon de vérifier le type d'entrée. avant de voir votre réponse, j'étais habitué à $ ("input [type = 'text']").
Zohaib