heinerle: IE und textarea (Wert wird nicht übertragen)

Hallo Gemeinde,

ich habe ein Problem mit einem Formularelement. Ein Formular soll Text in ein CMS übertragen (TinyMCE). Die Übertragung, also das Speichern, soll mit Hilfe eines graphischen Buttons vorgenommen werden. Das Formular funktioniert mit allen möglichen Browsern und Betriebssystemen.
Nur bei InternetExplorer funktioniert das nicht, der Inhalt aus <textarea> kommt nicht an. Ich habe schon an allen möglichen Elementen rumgestellt.
Habe bei der Auswertung des Formulares habe ich mir Ausgaben aller Felder erzeugt, beim Internetexplorer kommt  kein Inhalt von textarea für "mycontent" an. Kann sich das mal jemand anschauen und mir meinen Fehler nennen? Oder einen Workarround, falls dies ein Bug des IE ist?

<form method="post" action="">
<textarea style="width: 95%; height: 300px;" id="mycontent" name="mycontent">
<h1><span style="font-family: times;">Ich bin eine &Uuml;berschrift</span></h1>
<pre>kjlhlkjhlk<br /><br /><img src="images/neu_2.jpg" border="0" alt="ICH" title="ICH" width="385" height="480" /><br /></pre>
</textarea>
<input  type="hidden" name="pagenum" value="testseite" />
<table>
<tr>
<td><input style="width: 32px; height: 32px;" type="image" name="submit" value="Save" src="images/accept.gif" /></td>

<td><input type="image" name="submit" value="Return" src="images/back.gif" style="width: 32px; height: 32px;" /></td>

<td><a href="javascript:toggleEditor('mycontent');" style="text-decoration: none; border: 0; "><img src="images/wyz.gif" alt="Toggle Wysiwyg" style="border: 0; width: 32px; height: 32px;" /></a></td>
</tr>
</table>
</form>

vielen vielen dank schon im voraus
heinerle

  1. hallo,

    <textarea style="width: 95%; height: 300px;" id="mycontent" name="mycontent">
    <h1><span style="font-family: times;">Ich bin eine &Uuml;berschrift</span></h1>
    <pre>kjlhlkjhlk<br /><br /><img src="images/neu_2.jpg" border="0" alt="ICH" title="ICH" width="385" height="480" /><br /></pre>
    </textarea>

    Schau dir mal bitte an, was textarea enthalten darf.

    Grüße aus Berlin

    Christoph S.

    --
    Visitenkarte
    ss:| zu:) ls:& fo:) va:) sh:| rl:|
    1. Hallo Christoph,

      <textarea style="width: 95%; height: 300px;" id="mycontent" name="mycontent">
      <h1><span style="font-family: times;">Ich bin eine &Uuml;berschrift</span></h1>
      <pre>kjlhlkjhlk<br /><br /><img src="images/neu_2.jpg" border="0" alt="ICH" title="ICH" width="385" height="480" /><br /></pre>
      </textarea>

      Schau dir mal bitte an, was textarea enthalten darf.

      das ändert aber nichts daran, dass textarea durchaus die Zeichen '>' oder '"' enthalten darf. Natürlich werden darin keine HTML-Tags interpretiert, sondern die Zeichen als reiner Text dargestellt.

      Ich vermute aber, dass das erste Vorkommen von '</' hier, wie auch in ein paar anderen Fällen, bereits das Element schließt (auch wenn die Schreibweise andeutet, dass der OP XHTML verwendet, rennt der IE ja doch mit dem SGML-Parser durch).
      Im übrigen weiß ich nicht, was der OP sich von einem br-Element innerhalb von pre verspricht.

      So long,
       Martin

      --
      Wer im Steinhaus sitzt, soll nicht mit Gläsern werfen.
      1. also zum inhalt der Textarea:
        wie bereits erwähnt, ist innerhalb von textarea der TinyMCE eingebunden.
        ich lade den Inhalt der textarea aus einer Datenbank. Ich will quasi einen vorher erstellen HTML-Text weiterbearbeiten/überarbeiten, deshalb kommen dort auch die <br /> vor
        Daraus ergibt sich aber auch, dass KEIN echtes PCDATA möglich ist, denn nicht nur <br /> hat kein öffnendes Tag, es gibt ja auch noch mehr Elemente, die das nicht haben.
        Gibt es also einen Workarround, mit dem ich dieses Ding aus Redmond (manche nennen es InternetExplorer) überlisten kann?
        Das gleiche Problem müssten doch andere Programmierer auch haben, die einen Editor einbinden wollen.

        1. Ave heinerle!

          ich lade den Inhalt der textarea aus einer Datenbank. Ich will quasi einen vorher erstellen HTML-Text weiterbearbeiten/überarbeiten, deshalb kommen dort auch die <br /> vor

          Dafür gibt es doch das schöne Werkzeug nl2br, das wandelt Zeilenumbrüche automatisch in <br />sss, oder hab ich dich jetzt falsch verstanden?

          Grüße aus H im R an heinerle,
            Primus Enginus*

  2. Hi,

    ich habe ein Problem mit einem Formularelement. Ein Formular soll Text in ein CMS übertragen (TinyMCE). Die Übertragung, also das Speichern, soll mit Hilfe eines graphischen Buttons vorgenommen werden. Das Formular funktioniert mit allen möglichen Browsern und Betriebssystemen.
    Nur bei InternetExplorer funktioniert das nicht, der Inhalt aus <textarea> kommt nicht an.

    Und das hast du *wie* ueberprueft?

    (Vermutlich bist du darauf hereingefallen, dass der IE fuer Input type=image nur die Klickkoordinaten uebergibt, den Namen aber nicht.)

    MfG ChrisB

    1. ich habe es überprüft, indem ich mir den Wert ausgeben lasse welcher nach absenden übertragen werden sollte.
      und da kommt beim internetexplorer nichts an

  3. Workarround gefunden:

    das scheint ein echter IE-Bug zu sein, habe mich gerade belesen. Ich habe daher das Formular umgeschrieben und übergebe die Werte für das Absenden in hidden-Feldern
    IE überträgt keine Werte aus <input type="image"> man könnte sich behelfen mit <button>, aber ich halte meine Lösung für besser.

    <form method="post" action="">
    <textarea style="width: 95%; height: 300px;" id="mycontent" name="mycontent"><h1><span style="font-family: times;">Ich bin eine &Uuml;berschrift</span></h1>
    <pre>kjlhlkjhlk<br />test IE<br /><br />nur ein kleine Testeintrag, damit hier überhaupt was steht. Übung macht den Meister test test <br />test testtesttesttesttesttesttesttesttesttest testtesttesttest und neo ein test<br /><br /><br /><br /><img src="images/neu_2.jpg" border="0" alt="ICH" title="ICH" width="385" height="480" /><br /></pre></textarea>
    <input  type="hidden" name="pagenum" value="testseite" /><table><tr>
    <td><input type="hidden" name="submit" value="Save"><input style="width: 32px; height: 32px;" type="image" name="btn_save" value="Save" src="images/accept.gif" /></td>
    <td><input type="image" name="submit" value="Return" src="images/back.gif" style="width: 32px; height: 32px;" /></td>
    <td><a href="javascript:toggleEditor('mycontent');" style="text-decoration: none; border: 0; "><img src="images/wyz.gif" alt="Toggle Wysiwyg" style="border: 0; width: 32px; height: 32px;" /></a></td></tr>
    </table>
    </form>

    Ich danke euch trotzdem, manchmal braucht man nur Denkanstösse und die habt Ihr mir gegeben.

    thx
    heinerle

    1. Hi,

      das scheint ein echter IE-Bug zu sein, habe mich gerade belesen. Ich habe daher das Formular umgeschrieben und übergebe die Werte für das Absenden in hidden-Feldern
      IE überträgt keine Werte aus <input type="image">

      Schrieb ich doch ...

      Deine Aussage, dass der Textarea-Inhalt gar nicht uebertragen worden sei, ist dann aber gelog^Wfalsch - du hast dann wohl lediglich diese Testausgabe vom Vorhandensein des Imagebutton-Namens in den uebertragenen Daten abhaengig gemacht.

      man könnte sich behelfen mit <button>, aber ich halte meine Lösung für besser.

      Oder man fragt einfach auf das ab, was der IE bei Input type=image tatsaechlich uebergibt.

      MfG ChrisB