Linuchs: textarea mit Javascript auslesen - wie?

Moin,

ich fülle ein textarea mit Text, klicke auf einen Button und möchte diesen Text mit Javascript auslesen.

<textarea id="pl_csv"></textarea>
<button onclick="pl_play()">Play</button>

Funktioniert NICHT:

function pl_play() {
  console.log( "pl_csv=[" +document.querySelector("#pl_csv").innerHTML +"]" );
}

Anzeige: pl_csv=[]

Dies funktioniert AUCH NICHT:

function pl_play() {
  console.log( "pl_csv=[" +document.querySelector("#pl_csv").value +"]" );
}

Anzeige: pl_csv=[]

Und jetzt wird's ganz verrückt:

function pl_play() {
  let arr_songs = document.querySelector("#pl_csv").innerHTML.split( "\n" );
  console.log( "arr_songs[0]=[" +arr_songs[0] +"]" );
  console.log( "arr_songs[1]=[" +arr_songs[0] +"]" );
}

Anzeige: pl_csv=[Zeile 1 Zeile 2 Zeile 3]

Nach dem split wird Inhalt erkannt.

Woran liegt's?

Gruß, Linuchs

P.S. Ich probiere, eine Playlist zu erstellen HTML/Tutorials/Multimedia/Playlists

  1. Moin,

    ich fülle ein textarea mit Text, klicke auf einen Button und möchte diesen Text mit Javascript auslesen.

    ganz kurz, da ich unterwegs bin:

    <textarea id="pl_csv"></textarea>
    <button onclick="pl_play()">Play</button>
    

    keine on-Attribute mehr!!!!

    let textareaContent = document.getElementById("pl_csv").value;
    
    console.log(textareaContent);
    

    Gruß, Linuchs

    LG Mattthias

    P.S. Ich probiere, eine Playlist zu erstellen HTML/Tutorials/Multimedia/Playlists

    Perfekt! Das muss lange mal fertiggestellt werden!

    Herzliche Grüße

    Matthias Scharwies

    --
    Das wirksamste Mittel gegen Sonnenbrand
    ist Urlaub am Ostseestrand!
    1. Hallo Matthias,

      danke für den „Anschub“.

      In meinem „klingenden Veranstaltungskalender“ habe ich Playlisten. Die Titel werden per PHP mit entsprechenden Filtern aus der Datenbank geholt. Sind wegen Copyright-Problemen nicht öffentlich.

      Nun muss ich die Spezialitäten ausmisten und eine schlanke Lösung anbieten.

      Hier die Werkstatt, wer mag, kann reinschauen:

      http://remso.de/studien/playlist/

      Gruß, Linuchs

  2. Hallo Linuchs,

    document.querySelector("#pl_csv").value

    muss funktionieren und funktioniert bei mir auch. Eine textarea enthält weder Kindelemente noch Textknoten, deswegen sind innerHTML, innerText oder textContent leer.

    Bist Du sicher, dass sich bei Dir nicht Script-Änderung und Test zeitlich überschnitten haben, so dass Dein dritter Test in Wahrheit .value verwendet hat?

    Rolf

    --
    sumpsi - posui - obstruxi
    1. Lieber Rolf,

      Eine textarea enthält weder Kindelemente noch Textknoten,

      ist das wirklich so?

      <textarea name="kommentar">vorbelegter Inhalt...</textarea>
      

      Will man den Inhalt einer Textarea vorbelegen, steht dieser in der Tat als Textknoten im Dokument. Greift man mit JavaScript auf diesen zu, erhält man das, was als Vorbelegung eingetragen wurde.

      Liebe Grüße

      Felix Riesterer

      1. @@Felix Riesterer

        Eine textarea enthält weder Kindelemente noch Textknoten,

        ist das wirklich so?

        Zur Hälfte. 😜

        Das Inhaltsmodell ist Text. textarea kann also einen Textknoten enthalten, aber keine Kindelemente. Im Text vorkommende < und > werden als Zeichen behandelt (escapet).

        Will man den Inhalt einer Textarea vorbelegen, steht dieser in der Tat als Textknoten im Dokument. Greift man mit JavaScript auf diesen zu, erhält man das, was als Vorbelegung eingetragen wurde.

        Und zwar sowohl mit innerHTML als auch mit textContent als auch mit value.

        Ändert man innerHTML oder textContent mit JavaScript; ändert sich der Wert in der Anzeige und in innerHTML, textContent und value.

        Ändert man value mit JavaScript; ändert sich der Wert in der Anzeige und in value. innerHTML und textContent behalten ihren ursprünglichen Wert

        mission textarea

        Kwakoni Yiquan

        --
        Ad astra per aspera
        1. @@Gunnar Bittersmann

          Ändert man …

          mission textarea

          Hintergrund der Änderung: Bei TOS[1] und The Animated Series hieß es im Vorspann noch „… where no man has gone before“. Wie 60er/70er!

          Bei The Next Generation (80er/90er) wurde das geändert zu „… where no-one has gone before“. Und so ist es auch bei Strange New Worlds. Geschlechtergerechte Sprache war damals schon ein Ding.

          Bruce Springsteen hat den Text von Elvis’ „Follow That Dream“ auch angepasst und singt statt „Every man has the right to live, the right to a chance to give what he has to give (1981, Melodie auch noch wie bei Elvis) schon seit TNG-Zeiten „Every one has the right to live, the right to a chance to give what they have to give“ (1986, auch die Melodie ist anders).

          Kwakoni Yiquan

          --
          Ad astra per aspera

          1. das steht für „Those Old Scientists“ („Tierisch olle Sternreisende“) 😆 ↩︎

          1. @@Gunnar Bittersmann

            Bruce Springsteen hat den Text von Elvis’ „Follow That Dream“ auch angepasst und singt statt „Every man has the right to live, the right to a chance to give what he has to give (1981, Melodie auch noch wie bei Elvis) schon seit TNG-Zeiten „Every one has the right to live, the right to a chance to give what they have to give“ (1986, auch die Melodie ist anders).

            Und dann hab ich auch noch was dazwischen von 1983 gefunden: schon die geänderte Melodie, aber noch mit „man“/„he“.

            Kwakoni Yiquan

            --
            Ad astra per aspera
          2. Liebe(r) Gunnar,

            @@Gunnar Bittersmann

            Ändert man …

            mission textarea

            ist das noch durch das Themenfeld dieses Forums abgedeckt? Und was willst Du uns mit Deinem Selbstgespräch wirklich sagen?

            Liebe Grüße

            Felix Riesterer