Go Back   CodingForums.com > :: Client side development > JavaScript programming > DOM and JSON scripting

Before you post, read our: Rules & Posting Guidelines

Reply
 
Thread Tools Rate Thread
Enjoy an ad free experience by logging in. Not a member yet? Register.
Old 10-17-2002, 03:30 PM   PM User | #1
RadarBob
Regular Coder

 
Join Date: Jun 2002
Location: Round Rock, Texas
Posts: 443
Thanks: 0
Thanked 0 Times in 0 Posts
RadarBob is an unknown quantity at this point
Question How to pass <table> back to parent

Background
I'm spawning a child window from a parent. In the child I'm dynamically building a table. When I click "finished" I want the entire table to go back to the parent and replace the original table "shell" (an empty <table> </table> tag-pair).

Note: The table ID is the same at the parent and child. This allows the replacement to work repeatedly. The child window closes but I don't see the table on the parent.

I get the feeling I'm mixing DHTML and DOM (ie "window.opener....") and .. well, I don't know what to think.

Is it OK to nest DOM functions as shown in the code?

I've tried a couple of different things - I'd like to use "replaceNode", but the syntax is not clear in the reference I have.

[b]The problem{/b]
Below is the function triggered by the child window "finished" button's onclick event.

I suspect the variable assignment is wrong as an alert box immediately after it (removed in this sample) did not show up.
Code:
function finished() {
   var oldReport = window.opener.document.getElementbyId('DBReportsTable');
   oldReport.firstChild.removeNode(true); // the <tbody>
   oldReport.appendChild(document.getElementById('DBReportsTable').firstChild);
   window.close();
   return true;
} // finished()

Last edited by RadarBob; 10-17-2002 at 07:30 PM..
RadarBob is offline   Reply With Quote
Old 10-17-2002, 06:14 PM   PM User | #2
beetle
Senior Coder

 
Join Date: Aug 2002
Posts: 3,467
Thanks: 0
Thanked 0 Times in 0 Posts
beetle has a little shameless behaviour in the past
Couple things....

removeNode() is IE only. Should change to:

oldReport.removeChild(oldReport.firstChild);

Also, is the TBODY really the firstChild? If you're browsing with Gecko, it could be a textNode.

Vladdy's kick*ss DOM Viewer can help you determine this.
__________________
My Site | fValidate | My Brainbench | MSDN | Gecko | xBrowser DOM | PHP | Ars | PVP
“Minds are like parachutes. They don't work unless they are open”
“Maturity is simply knowing when to not be immature”
beetle is offline   Reply With Quote
Old 10-17-2002, 06:42 PM   PM User | #3
RadarBob
Regular Coder

 
Join Date: Jun 2002
Location: Round Rock, Texas
Posts: 443
Thanks: 0
Thanked 0 Times in 0 Posts
RadarBob is an unknown quantity at this point
Didn't realize removeNode (et.al.) is IE only. I don't recall the tutorial at Doc Javascript http://www.webreference.com/js/ saying it was IE unique.

Yes, the firstChild reference for tbody works. It just happens that tbody is the only child of table.
RadarBob is offline   Reply With Quote
Reply

Bookmarks

Jump To Top of Thread


Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 07:57 PM.


Advertisement
Log in to turn off these ads.