Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.javascript > #7890
| From | RobG <rgqld@iinet.net.au> |
|---|---|
| Newsgroups | comp.lang.javascript |
| Subject | Re: Changing letters in boxes |
| Date | 2011-10-30 19:33 -0700 |
| Organization | http://groups.google.com |
| Message-ID | <48b611a8-825b-49cf-bff1-e786e15f7361@f3g2000pri.googlegroups.com> (permalink) |
| References | <1cb16076-87c8-4bc6-8007-1efddfb7530b@s10g2000yqa.googlegroups.com> <j8ji7m$fj8$1@dont-email.me> <3024323.SPkdTlGXAF@PointedEars.de> |
On Oct 31, 3:58 am, Thomas 'PointedEars' Lahn <PointedE...@web.de>
wrote:
> Jukka K. Korpela wrote:
> > <script>
> > function letters(a,b,c) {
> > document.getElementById('box').innerHTML =
> > '<td>' + a + '</td><td>' + b + '</td><td>' + c + '</td>' ;
> > }
> > </script>
>
> > Change the <tr> tag for the table to <tr id=box>. (Here and before "box"
> > is just an identifier; choose another one if you can find a more
> > self-documenting name.)
>
> Unreliable. Especially MSHTML (the layout engine that Internet Explorer
> uses) is prone to errors with `innerHTML' accesses in table structures.
Yes. MS documentation explicitly says not to use innerHTML to modify
tables[1].
>
> A safer approach is to remove all cells of the row except one, then replace
> the content of the first cell and add more cells:
>
> var tr = document.getElementById("box");
> var firstChild = tr.firstChild;
> while (tr.lastChild != firstChild)
> {
> tr.removeNode(tr.lastChild);
> }
>
> tr.cells[0].innerHTML = a;
You seem to be assuming here that the firstChild of the tr will be a
cell (TD or TH), when it may be a text node:
<table>
<tr onclick="alert(this.firstChild);">
<td>foo
</table>
The above shows "3" for the text node following the TR in Firefox,
Opera and Chrome, or "1" for the element node in IE 8 (which seems to
omit the text node).
To get the first cell, better to be explicit:
var firstCell = tr.cells[0];
An alternative is getElementsByTagName('td')[0], but the cells can be
TH or TD, using the cells collection deals with both.
[...]
> When all you know is jQuery, every problem looks $olvable.
<grin> is that one of yours?
1. http://msdn.microsoft.com/en-us/library/ms533897%28v=VS.85%29.aspx
--
Rob
Back to comp.lang.javascript | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Changing letters in boxes fulio pen <fuliopen@yahoo.com> - 2011-10-30 05:26 -0700
Re: Changing letters in boxes "Jukka K. Korpela" <jkorpela@cs.tut.fi> - 2011-10-30 15:08 +0200
Re: Changing letters in boxes fulio pen <fuliopen@yahoo.com> - 2011-10-30 07:14 -0700
Re: Changing letters in boxes fulio pen <fuliopen@yahoo.com> - 2011-10-30 10:22 -0700
Re: Changing letters in boxes "Jukka K. Korpela" <jkorpela@cs.tut.fi> - 2011-10-30 20:14 +0200
Re: Changing letters in boxes fulio pen <fuliopen@yahoo.com> - 2011-10-30 12:27 -0700
Re: Changing letters in boxes Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2011-10-30 18:58 +0100
Re: Changing letters in boxes Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2011-10-30 19:07 +0100
Re: Changing letters in boxes Andrew Poulos <ap_prog@hotmail.com> - 2011-10-31 06:15 +1100
Re: Changing letters in boxes Lasse Reichstein Nielsen <lrn.unread@gmail.com> - 2011-11-01 17:17 +0100
Re: Changing letters in boxes Andrew Poulos <ap_prog@hotmail.com> - 2011-11-02 07:10 +1100
Re: Changing letters in boxes Andreas Bergmaier <andber93@web.de> - 2011-11-01 23:37 +0100
Re: Changing letters in boxes Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2011-11-02 00:20 +0100
Re: Changing letters in boxes Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2011-11-01 18:01 +0100
Re: Changing letters in boxes Matt McDonald <matt@fortybelow.ca> - 2011-10-30 17:42 -0600
Re: Changing letters in boxes Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2011-10-31 02:19 +0100
Re: Changing letters in boxes Matt McDonald <matt@fortybelow.ca> - 2011-10-31 21:29 -0600
Re: Changing letters in boxes Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2011-11-01 11:52 +0100
Re: Changing letters in boxes RobG <rgqld@iinet.net.au> - 2011-10-30 19:33 -0700
Re: Changing letters in boxes "Jukka K. Korpela" <jkorpela@cs.tut.fi> - 2011-10-31 08:37 +0200
Re: Changing letters in boxes Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2011-10-31 11:50 +0100
Re: Changing letters in boxes faqir <faqir@faqir.com> - 2011-11-03 23:20 +0200
csiph-web