Avatar billede hoppe11 Nybegynder
17. juli 2009 - 17:45 Der er 3 kommentarer og
1 løsning

tilføje tr i table.. fra oven eller fra bunden?

jeg har et script som enten skal tilføje tr elementer og tilhørende td elementer enten i toppen eller i bunden af et table element

function add_tr(elm, txt, type)
{
    var tbl = document.getElementById(elm);
    var tr_obj = tbl.getElementsByTagName('tr');
   
    var newRow = tbl.insertRow(type ? 0:tr_obj.length);
    var newCell = newRow.insertCell(0);
    newCell.innerHTML = txt;
}

når type er sat til true skulle den tilføje i bunden, men om type står til true eller false bliver der kun tilføjet elementer fra toppen? hvad gør jeg galt?
Avatar billede nyp Nybegynder
17. juli 2009 - 23:09 #1
Synes nu det virker udmærket, borset fra at den indsætter rækken i toppen når type er true, du kan dog gøre scriptet lidt kortere:

function add_tr(elm, txt, type)
{
    var tbl = document.getElementById(elm);
    var newRow = tbl.insertRow(type ? 0:-1);
    var newCell = newRow.insertCell(0);
    newCell.innerHTML = txt;
}
Avatar billede hoppe11 Nybegynder
18. juli 2009 - 12:05 #2
smid et svar nyp..

var ikke klar over man kunne skrive -1

:)
Avatar billede nyp Nybegynder
18. juli 2009 - 14:02 #3
Den er her :)
Avatar billede olebole Juniormester
19. juli 2009 - 12:54 #4
<ole>

- og i mere tidsvarende kode ser det sådan ud:

function add_tr(elm, txt, type) {
    var tbl = document.getElementById(elm);
    var newRow = document.createElement("tr");
    if (type) tbl.insertBefore(newRow, tbl.firstChild);
    else tbl.appendChild(newRow);
    var newCell = document.createElement("td");
    newRow.appendChild(newCell);
    var newTxt = document.createTextNode(txt);
    newCell.appendChild(newTxt);
}

PS: Husk, at 'elm' skal være id'et på tabellens tbody element

/mvh
</bole>
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester