Werte aus <textarea> in Array speichern

reddragon90

Erfahrenes Mitglied
Hallo,

wie kann man in Werte die man in eine <textarea> schreibt in einem Array speichern?

Habe es schon so ausprobiert, aber bekomme im Popup keine Werte angezeigt. Wie geht das?

Code:
var textfield = document.getElementById('eingabe').value;
               var textfield = new Array();
                      
               alert(textfield[0]);
 
Zuletzt bearbeitet:
Du erhältst keine Werte, da du zwar im ersten Schritt der Variable textfield den Inhalt der Eingabe zuweist.
Im nächsten Schritt überschreibst du die Variable und damit sind die Werte weg.

Wie willst du die Eingabe überhaupt aufteilen?
Pro Zeile oder pro Wort?
 
Möchte die Eingabe pro Zeile aufteilen. Habe auch schon herausgefunden, dass das dann wohl so aussehen muss, aber viel weiter komme ich nicht.

Code:
var textfield = document.getElementById('eingabe').value.split('\n');

und die Ergänzung

Code:
var data = textfield[];

nützt auch nichts.
 
Mit einen reinen \n kommst du leider nicht weit, da nicht alle Betriebssysteme mit \n ein Linebreak kennzeichnen.

Die verschiedenen Varianten sind Kombinationen aus Return Carrier (\r) und New Line (\n) bzw. diese jeweils alleine stehend.
Mittels eines Splits kann man dies auch alle Abfangen, aber durch Regular Expression wird es 1. Eleganter und 2. auch Effektiver.
Eine Variante wäre z.B. dies:
Javascript:
document.getElementById('eingabe').value.match(/[^\r\n]+/g);

Oder etwas unabhängiger von der einen Eingabe und als kleine Testumgebung:
HTML:
<html>
    <head>
        <script type="text/javascript">
            function splitLines( areaid ) {
                return document.getElementById(areaid).value.match(/[^\r\n]+/g);
            }
        </script>
    </head>
    <body>
        <textarea id="eingabe"></textarea>
        <br />
        <input type='button' onclick="console.dir( splitLines( 'eingabe' ) );" value="analysieren">
    </body>
</html>
 

Neue Beiträge

Zurück