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?



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:



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.

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;

3

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

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


2

CODE

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

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

    if (taille > 9) {

//TODO

}

});

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.


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
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.