Wie kann ich mit jQuery die Länge des in ein Textfeld eingegebenen Textes ermitteln?

138

Wie kann ich mit jQuery die Länge des in ein Textfeld eingegebenen Textes ermitteln?

Blankman
quelle
1
Manchmal bedeutet "versuchen" googeln.
Zundi
2
@ Sandy Ich bekomme das von Googeln ..;)
Ihsan
1
@Qwerty Ich habe nach der gleichen Frage gegoogelt und diese Seite bekommen.
Izzy
@Izzy Das ist in Ordnung, da diese Frage alt genug ist, um in Google-Ergebnissen aufzutauchen. Damit präsentiere ich Ihnen einen der bekanntesten Hilfevampire von SO.
Qwerty

Antworten:

320
var myLength = $("#myTextbox").val().length;
Yfeldblum
quelle
13
Für große Gerechtigkeit ~
Vael Victus
104

Wenn Ihr Textfeld das ID-Attribut "mytextbox" hat, können Sie die Länge wie folgt ermitteln:

var myLength = $("#mytextbox").val().length;
  • $("#mytextbox") findet das Textfeld anhand seiner ID.
  • .val() Ruft den Wert des vom Benutzer eingegebenen Eingabeelements ab, bei dem es sich um eine Zeichenfolge handelt.
  • .length Ruft die Anzahl der Zeichen in der Zeichenfolge ab.
Jonathan Tran
quelle
27
Up Vote, weil Sie erklärt haben, was alles funktioniert, und nicht den Code bereitgestellt haben.
Wenn Ihr Textfeld keine ID hat, können Sie es mit Namen referenzieren. Do a$("input[name='myinputname']").val().length;
TARKUS
10

Für mich ist es kein Textfeld, sondern ein Span-Tag, und das hat bei mir funktioniert.

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

Der unten genannte Code funktioniert einwandfrei, um die Länge aller in das Textfeld eingegebenen Zeichen zu bestimmen.

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

Aqib Shehzad
quelle
2

CODE

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

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

    if (taille > 9) {

//TODO

}

});
Fadid
quelle
1

Sie müssen das Element nur mit einem geeigneten jQuery-Selektor und dann der .val()Methode zum Abrufen der im Eingabetextfeld enthaltenen Zeichenfolge abrufen und dann die .lengthZeichenfolge für diese Zeichenfolge aufrufen .

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

Beachten Sie jedoch, dass bei Auswahl des Selektors mit mehreren Eingaben .val()nur der Wert des ersten Textfelds zurückgegeben wird. Sie können auch die Auswahl ändern, um ein spezifischeres Element :textzu erhalten. Behalten Sie jedoch die Option bei , um sicherzustellen, dass es sich um ein Eingabetextfeld handelt.

Auf einer anderen Anmerkung, die Länge einer Zeichenfolge in einem anderen, nicht-Eingabeelement enthalten ist, zu erhalten, können Sie die Verwendung .text()Funktion die Zeichenfolge zu erhalten und dann verwenden , .lengthauf dieser Saite seine Länge zu finden.

Daveslab
quelle
1
-1 Sie liegen falsch, es wird nur die Länge des Werts des allerersten Eingabefelds zurückgegeben. jsfiddle.net/8Khzf
nyuszika7h
Vielen Dank. Es ist hilfreich. Ich lerne einen neuen Weg, um den Eingabetyp zu überprüfen. Bevor ich deine Antwort sah, war ich an $ gewöhnt ("input [type = 'text']").
Zohaib