garry27 Posted December 17, 2006 Share Posted December 17, 2006 i've been on this for literally several hours. why is js skipping past the td elements in my table, straight to the text nodes when i use:[code] var tbl = document.getElementById('publist'); // elm.parentNode; var nodeX = tbl.rows[0].firstChild; alert (nodeX.nodeType); //displays 3[/code]and then when i try to do alert (nodeX.nodeValue) it always displays a blank box. Quote Link to comment Share on other sites More sharing options...
artacus Posted December 17, 2006 Share Posted December 17, 2006 That's what I get, 1st child is text (new line character), second is td, third is text (\n)...Use Firefox with firebug extension to checkout what is going on in your DOM. Quote Link to comment Share on other sites More sharing options...
garry27 Posted December 17, 2006 Author Share Posted December 17, 2006 where's the logic in that if i call for the first child element of a tr in a valid html table and it returns a bloody text node? Quote Link to comment Share on other sites More sharing options...
fenway Posted December 18, 2006 Share Posted December 18, 2006 Why not use getElementByTagName? Quote Link to comment Share on other sites More sharing options...
mrhoo Posted December 20, 2006 Share Posted December 20, 2006 A newline inside a tr is a textNode, and the first child of the tr if it immediately follows the opening tag.IE doesn't see it, or any empty nodes, but the other browsers will. You can use the (tr)element.getElementsByTagName('td')nodelist, or keep the newlines outside the table rows in the source. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.