Strange behaviour accessing textarea elements in IE

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Strange behaviour accessing textarea elements in IE

Chris Bailey-2
Hi all,

I've stumbled across some very weird behaviour in IE.

Basically if I try and get a handle to a hidden textarea in an
xforms:repeat  using getElementById() (and after I've dynamically inserted
a new element into the repeated set) the getElementById() function returns
the (first) newly inserted control not the hidden one I requested.

The attached file which will run in the sandbox *should* make this a little
clearer. It runs as expected in FF and Opera but not in IE 7.0 or 6.0

Can anyone provide an explanation for this behaviour?
I notice it only happens if I use xforms:textarea as xforms:input works ok.

Thanks,
Chris.


--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws

xforms_test_repeat_ids.xhtml (4K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Strange behaviour accessing textarea elements in IE

Erik Bruchez
Administrator
Chris,

 > I've stumbled across some very weird behaviour in IE.
 >
 > Basically if I try and get a handle to a hidden textarea in an
 > xforms:repeat using getElementById() (and after I've dynamically
 > inserted a new element into the repeated set) the getElementById()
 > function returns the (first) newly inserted control not the hidden
 > one I requested.
 >
 > The attached file which will run in the sandbox *should* make this a
 > little clearer. It runs as expected in FF and Opera but not in IE
 > 7.0 or 6.0
 >
 > Can anyone provide an explanation for this behaviour?
 > I notice it only happens if I use xforms:textarea as xforms:input
works ok.

I am pretty sure that you are hitting this:

   http://www.csb7.com/test/ie_getelementbyid_bug/index.php

We implement in xforms.js a better version of getElementById() which
works around the problem:

   ORBEON.util.Dom.getElementById()

I replaced your calls to document.getElementById() with the above, and
it seems to work.

Don't you love IE and Microsoft?

-Erik

--
Orbeon Forms - Web Forms for the Enterprise Done the Right Way
http://www.orbeon.com/




--
You receive this message as a subscriber of the [hidden email] mailing list.
To unsubscribe: mailto:[hidden email]
For general help: mailto:[hidden email]?subject=help
ObjectWeb mailing lists service home page: http://www.objectweb.org/wws