Hi,
var theadrownum = 0; //number of rows in thead
if (document.getElementsByTagName("thead")[0].nodeName == "THEAD") theadrownum = document.getElementsByTagName("thead")[0].lastChild.previousSibling.rowIndex + 1;
>
> Solange ein <thead> vorhanden ist, kein Problem.
doch, schon. Du suchst im ganzen Dokument nach thead-Elementen und nimmst dann einfach das erste davon. Willst du die Suche nicht lieber auf eine bestimmte Tabelle beschränken?
> Nur wenn kein <thead> da ist, dann spuckt
>
> `document.getElementsByTagName("thead")[0].nodeName`{:.language-javascript}
>
> irgendwas Blödes aus, ...
Ja, nämlich null. Das ist so definiert. Also darfst du nicht einfach auf eine Eigenschaft des vermeintlichen Objekts zugreifen, bevor du weißt, ob diese Eigenschaft überhaupt existiert. Prüfe zuerst, ob überhaupt ein thead existiert, und dann erst, wieviele tr-Elemente er enthält:
~~~javascript
var thead = theTable.getElementsByTagName("thead");
var theadrows = (thead ? thead[0].getElementsByTagName("tr").length : 0);
Eventuell geht das noch einfacher, wenn man die DOM-Repräsentation des table-Elements verwendet - ich weiß, dass man damit komfortabel auf rows[] zugreifen kann. Ich weiß aber nicht genau, ob und wie die thead- oder tbody-Elemente da abgebildet werden.
So long,
Martin
--
Wenn ein Räuber eine deutsche Amtsstube überfällt, welchen Satz kann er sich dann sparen?
"Keine Bewegung!"
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(