Wie autosize eine textarea mit Prototyp?

Zur Zeit arbeite ich an einer internen sales-Anwendung für die Firma für die ich arbeite, und ich habe eine form, die dem Benutzer ermöglicht, die Lieferanschrift zu ändern.

Nun ich denke, es würde viel schöner Aussehen, wenn die textarea-ich bin für die Haupt-Email-Adresse-details, würde nur dauern, bis die Gegend der text in ihm, und automatisch verkleinern, wenn der text geändert wurde.

Hier ist ein screenshot des derzeit.

Wie autosize eine textarea mit Prototyp?

Irgendwelche Ideen?


@Chris

Einen guten Punkt, aber es gibt Gründe, warum ich wollen, es zu ändern. Ich möchte den Bereich dauert es, bis der Bereich, der die darin enthaltenen Informationen. Wie man sehen kann im Screenshot, wenn ich eine Feste textarea, es dauert, bis eine faire wack vertikalen Raum.

Ich kann, reduzieren Sie die schriftart, aber ich brauche Adresse werden groß und gut lesbar. Jetzt kann ich die verringern Sie die Größe der text-Bereich, aber dann habe ich Probleme mit Menschen, die eine Adresszeile, die dauert 3 oder 4 (man nimmt 5) Linien. Benötigen, um die Benutzer eine Bildlaufleiste ist ein wichtiger no-no.

Denke ich, sollte ich ein bisschen genauer sein. Ich bin nach der vertikale skalieren und die Breite spielt keine Rolle, wie viel. Das einzige problem, das passiert, ist die ISO-Zahl (die große "1") gedrängt unter der Adresse, wenn die Fensterbreite zu klein (wie man auf dem screenshot erkennen kann).

Es geht nicht um eine gimick; es geht darum, ein Textfeld, das der Benutzer Bearbeiten kann, dass nicht unnötiger Speicherplatz, sondern alle den text in dem Textfeld.

Aber wenn jemand kommt mit einer anderen Herangehensweise an das problem das ich offen zu.


Ich geändert habe den code ein wenig, weil es tätig war, ein wenig seltsam. Ich geändert es zu aktivieren, keyup, denn es würde nicht berücksichtigen, den Charakter, das war nur getippt.

resizeIt = function() {
  var str = $('iso_address').value;
  var cols = $('iso_address').cols;
  var linecount = 0;

  $A(str.split("\n")).each(function(l) {
    linecount += 1 + Math.floor(l.length / cols); //Take into account long lines
  })

  $('iso_address').rows = linecount;
};
  • Können Sie erstellen eine demo-Website, wo wir sehen, das bei der Arbeit?
  • dieses plugin scheint gut zu sein jacklmoore.com/autosize
  • Gibt es ein JQuery-Version? Wie der Zugriff auf die Spalten und Zeilen einer TextArea in JQuery?
  • Fast das gleiche, aber mit der ausdrücklichen Voraussetzung, dass sollte kleiner werden, wenn der text entfernt wird: stackoverflow.com/questions/454202/...
InformationsquelleAutor Mike | 2008-08-11
Schreibe einen Kommentar