David: CDATA in textarea: Warum geht's nicht?

Ich habe eine Formularseite, in deren Formularfelder (textareas) aus einer Datenbank u.U. HTML-formatierter Text geladen wird.
Damit die Seite valide bleibt, möchte ich deshalb die Inhalte der Textareas in einen CDATA-Bereich einschließen.
Irgendetwas scheine ich aber falsch zu machen, da, je nach Browser, der "gewollte" Inhalt zwischen '<![CDATA[' und ']]>' oder '[CDATA' und ']]' steht. Ich wäre über einen Hinweis echt glücklich...
besten Gruß,
David

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">  
<html xmlns="http://www.w3.org/1999/xhtml">  
<head>  
  <title>TinyTest</title>  
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />  
</head>  
<body>  
     <form action="test.php" method="get" accept="text/xml" accept-charset="iso-8859-1">  
          <div>  
               <textarea name="editor" id="textarea" rows="20" cols="100"><![CDATA[Lorem  
ipsum dolor.  
  
sit amet, consectetuer adipiscing elit. Maecenas et tortor ac nulla elementum sollicitudin.  
Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.]]></textarea>  
          </div>  
          <div>  
               <textarea name="editor2" id="textarea2" rows="20" cols="100"><![CDATA[<h1>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.</h1> <p>Vivamus tempus neque id elit. Morbi eleifend feugiat eros. Donec ac turpis ut risus elementum interdum. Pellentesque dapibus. Suspendisse aliquet libero ac sapien. Sed sed orci. Proin id augue vel mauris congue tristique.</p>]]></textarea>  
  
          <input type="submit" value="absenden" />  
          </div>  
     </form>  
</body>  
</html>
  1. Hallo,

    Damit die Seite valide bleibt, möchte ich deshalb die Inhalte der Textareas in einen CDATA-Bereich einschließen.

    Ich habe da einfach alles durch PHPs htmlspecialchars(); durchgejagt was in der Textarea erscheinen soll. Anders konnte ich das damals auch irgendwie nicht hinbekommen. Vielleicht hilft dir das schon.

    Grüße
    Jeena Paradies

    --
    Opera repairs msdn pages with help of JavaScript | Jlog | Gourmetica Mentiri
    1. Hallo Jeena,
      ja, das bleibt dann wohl die einzige Möglichkeit. Danke.
      Aber eigentlich ist es doch standardkonform, was ich gemacht habe, oder?
      Gruß, David

      1. hi,

        Aber eigentlich ist es doch standardkonform, was ich gemacht habe, oder?

        nö, laut beschreibung in selfhtml darf textarea nur PCDATA enthalten.

        gruß,
        wahsaga

        --
        /voodoo.css:
        #GeorgeWBush { position:absolute; bottom:-6ft; }
      2. puts "Hallo " + gets.chomp + "."

        ?> David
        => Hallo David.

        Aber eigentlich ist es doch standardkonform, was ich gemacht habe, oder?

        Naja, was hast du gemacht? Du hast eine Zeichenfolge in eine Textarea als Standardtext vorbelegt.
        Text innerhalb einer textarea wird als PCDATA behandelt, daran könntest du nur etwas ändern, wenn du deine eigene DTD schreibst.

        Einen schönen Freitag noch.

        Gruß, Ashura

        --
        Selfcode: sh:( fo:) ch:? rl:( br:^ n4:& ie:{ mo:) va:) de:> zu:) fl:( ss:| ls:[ js:|
        30 Days to becoming an Opera8 Lover -- Day 20: search.ini
        Meine Browser: Opera 8.01 | Firefox 1.0.4 | Lynx 2.8.3 | Netscape 4.7 | IE 6.0
        [Deshalb frei! - Argumente pro freie Software]
    2. Hi,

      Ich habe da einfach alles durch PHPs htmlspecialchars(); durchgejagt was in der Textarea erscheinen soll. Anders konnte ich das damals auch irgendwie nicht hinbekommen.

      Mit JavaScript geht es.

      Gruß, Cybaer

      --
      Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!