Portal > Foren > Ausschreibungssprachen und clientseitige Programmierung > HTML, XML und CSS > Eingabe von /n Feststellen und Height entsprechend erweitern.
Antwort
 
Themen-Optionen
Alt 19.11.2005, 22:51 Nach oben    #1
Benutzer
 
Benutzerbild von Sebastian
 
Registriert seit: 07.11.2005
Beiträge: 31
Standard Eingabe von /n Feststellen und Height entsprechend erweitern.

Hallo Liebe Community,

obwohl ich schon bei mehreren großen Seiten gesucht, und auch Google befragt habe, bin ich noch immer ohne wirkliches Ergebniss hier gelandet.

Problem
Ich habe eine Textarea. Dort habe ich via style die höhe angegeben. Diese ermittel ich aus dem gegebenen Text (area passt sich an text an).
Das passiert aber nur beim Laden.

Nun will ich erreichen, das wenn ich eine Leerzeile ([ENTER]) eingebe, die Textbox um das entsprechende wächst.

Folgendes habe ich:
Code:
var mh = 0;
function do_n ( textarea, hei )
{

   if ( mh == "0" )
   {
      mh = hei;
   }

   if ( text.value.charAt(length) == "\n" )
   {
      mh = mh + 16;
      text.style="height: "+mh+"px";
 }
}
Diesen Code habe ich auf einer Seite im Archiv gefunden, wo das anmelden nicht mehr erlaubt ist. (Somit keine Kontaktaufnahme mit dem Autor)

Wäre nett, wenn mir jemand sagen könnte, wo ich Infos zu meinem Problem finde, oder wie es zu lösen ist.

danke
__________________


„Oft denk’ ich an den Tod, den herben, Und wie am End’ ich's ausmach?!
Ganz sanft im Schlafe möcht ich sterben Und tot sein, wenn ich aufwach!“

Carl Spitzweg
Sebastian ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 20.11.2005, 14:11 Nach oben    #2
Benutzer
 
Benutzerbild von Sebastian
 
Registriert seit: 07.11.2005
Beiträge: 31
Standard

So, habe selber ne Lösung gefunden:

Code:
var tmpl = 0;
function make_bigger (textarea)
{
   var length = textarea.value.length - 1;
   var was = event.keyCode;

   tmpl = tmpl + 1;
   if ( tmpl == "90" )
   {
      textarea.rows=textarea.rows + 1;
      tmpl = 0;
   }

   if (was == 13)
   {
      textarea.rows=textarea.rows + 1;
   }
}
__________________


„Oft denk’ ich an den Tod, den herben, Und wie am End’ ich's ausmach?!
Ganz sanft im Schlafe möcht ich sterben Und tot sein, wenn ich aufwach!“

Carl Spitzweg
Sebastian ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 20.11.2005, 14:15 Nach oben    #3
Lutz
 
Benutzerbild von MrNiceGuy
 
Registriert seit: 14.08.2005
Ort: Nienburg / Weser
Beiträge: 684
Standard

Ich würde es etwas einfacher machen und den bestehenden Text kontrollieren, denn was machst du, wenn der mit Backspace oder Entf oder einfach nur markiert nen Newline überschreibt?

Code:
<html>
<head>
<title>Test - JS - Textarea passt sich der Textgr&ouml;&szlig;e an</title>
<script type="text/javascript">
<!--
function chg_test (ta)
{
  var txt = ta.value;
  txt = txt.split ("\r\n");

  ta.rows = txt.length;

  var len = 0;
  for (var i = 0;
  i < txt.length;
  i++)
  {
    len = ((txt[i].length > len) ? txt[i].length : len);
  }

  ta.cols = len;
}
//-->
</script>
</head>
<body>
<form name="frm_test">
<textarea name="ta_test" rows="5" cols="20" onKeyup="chg_test (this);"></textarea>
</form>
</body>
</html>
Einziger Nachteil: Ich weiß nicht, wie das unter Linux mit dem \r\n aussieht, da wird er wahrscheinlich nur %0D haben und das %0A nicht mehr!?
__________________
Paradox ist, wenn jemand für seinen Alkoholkonsum geradestehen soll
MrNiceGuy ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.11.2005, 10:18 Nach oben    #4
Benutzer
 
Benutzerbild von Sebastian
 
Registriert seit: 07.11.2005
Beiträge: 31
Standard

Danke dafür. Es war zuerst auch meine Idee, zu zählen wieviele \n vorhanden sind. Aber ich hatte doie funktion split nicht gefunden.

Damit deine Funktion unter FireFox Funktioniert, musst du \r entfernen.

Also ich verwende jetzt deine Variatation.

Danke !!!
__________________


„Oft denk’ ich an den Tod, den herben, Und wie am End’ ich's ausmach?!
Ganz sanft im Schlafe möcht ich sterben Und tot sein, wenn ich aufwach!“

Carl Spitzweg
Sebastian ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.11.2005, 18:24 Nach oben    #5
Lutz
 
Benutzerbild von MrNiceGuy
 
Registriert seit: 14.08.2005
Ort: Nienburg / Weser
Beiträge: 684
Standard

Kein Thema, wie gesagt, wie die Browser das mit den Newlines handhaben weiß ich nicht, mag sein, dass es manche nur mit nem \n (Newline) machen und manche mit nem \r (Carrierreturn) UND einem \n...

Viel Spaß mit der Funktion ^^
__________________
Paradox ist, wenn jemand für seinen Alkoholkonsum geradestehen soll
MrNiceGuy ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Alle Zeitangaben in WEZ +2. Es ist jetzt 18:33 Uhr.


Powered by vBulletin® Version 3.7.3 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44