Subject: Re: empty textarea broken in IE6, mozilla
From: "Jorge A. Salido" <jorgesalido@xxxxxxxxx>
Date: 14 Nov 2002 13:21:57 -0600
|
Actually, I think this is easier than it appears, other than it doesn't
allow a nice indentation.
The problem really is that when you separate the <textarea> and
</textarea> tags, anything between them becomes a part of what is
supposed to be in the textarea. Simply try:
<textarea name="comments" cols="50" rows="5" class="bodytext"></textarea>
It should work just fine.
Jorge
On Thu, 2002-11-14 at 12:27, Zakon, Stuart wrote:
> I am a bit surprised that empty <textarea> inputs on forms really break the
> current generation of browsers, both IE 6 and mozilla 1.
> Here is my XSLT:
>
> <!-- Comments -->
> <tr valign="top" align="left">
> <td width="15%" bgcolor="#ffffff" class="bodytextbold">Comments:</td>
> <td colspan="3" bgcolor="#ffffff">
> <p>
> <textarea name="comments" cols="50" rows="5" class="bodytext">
> </textarea>
> </p>
> </td>
> </tr>
>
> What happens is that all the HTML on the page after the textarea is shown by
> the browsers as the CONTENTS of the text area! (You have to see the bug to
> believe it.)
>
> It appears that the problem is that the XSL processor (Xalan-C) optimizes
> the empty element as follows:
> <textarea name="comments" cols="50" rows="5" class="bodytext" />
>
> The browsers absolutely choke on this.
>
> Manually changing the generated HTML to include the </textarea> end tag
> fixes the problem.
>
> Is there a way to suppress this optimization of empty elements? My
> <xsl:output> method is "html".
>
> I solved the problem temporarily by adding a blank character text node:
>
> <textarea name="comments" cols="50" rows="5" class="bodytext">
> <xsl:text> </xsl:text>
> </textarea>
>
> However, this is a temporary fix because it forces the <textarea> to include
> the blank which I would have to trim later.
>
>
> Stuart Zakon
> Objects by Design
> http://www.objectsbydesign.com
>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|