J
Jeff J.
The basic concept is a music playlist that I'm trying to write as a
table inside a div.
I have Song and Playlist 'classes'. The Song class has a Write()
method, as does the Playlist.
The Song.Write() boils down to this:
var tr = document.createElement("TR");
var td = document.createElement("TD");
tr.id = this.ID;
tr.appendChild(td);
td.innerText = this.Artist + ' - ' + this.Title;
td.onclick = function() {top.playSong(this.parentElement.id);}
return tr;
The Playlist.Write() call is essentially this:
// this.songs is an Array of Song objects
for (var x = 0; x < this.songs.length; x++) {
playlistTable.appendChild(this.songs[x].Write());
}
When I attempt to call playlistTable.appendChild() after creating the
table via document.createElement("Table"), everything works fine,
except I have no way to add the table to my document, since the div I
want it in won't believe that appendChild() is a valid method. If I
put the table in the div as a <TABLE>, and then try to append to that,
the *table* doesn't accept appendChild() as valid. Specifically, I get
an 'Invalid argument' error when calling either.
If anyone has ideas on what I'm missing, or where I screwed up, I
would be most grateful.
TIA
~ Jeff
table inside a div.
I have Song and Playlist 'classes'. The Song class has a Write()
method, as does the Playlist.
The Song.Write() boils down to this:
var tr = document.createElement("TR");
var td = document.createElement("TD");
tr.id = this.ID;
tr.appendChild(td);
td.innerText = this.Artist + ' - ' + this.Title;
td.onclick = function() {top.playSong(this.parentElement.id);}
return tr;
The Playlist.Write() call is essentially this:
// this.songs is an Array of Song objects
for (var x = 0; x < this.songs.length; x++) {
playlistTable.appendChild(this.songs[x].Write());
}
When I attempt to call playlistTable.appendChild() after creating the
table via document.createElement("Table"), everything works fine,
except I have no way to add the table to my document, since the div I
want it in won't believe that appendChild() is a valid method. If I
put the table in the div as a <TABLE>, and then try to append to that,
the *table* doesn't accept appendChild() as valid. Specifically, I get
an 'Invalid argument' error when calling either.
If anyone has ideas on what I'm missing, or where I screwed up, I
would be most grateful.
TIA
~ Jeff