Torsten Zängel: Zellen von Tabellen hervorheben (aufgrund von Inhalt)

Beitrag lesen

Hi,

Laufzeitfehler: 'document.getElementsByTagName(...)[...]' ist Null oder kein Objekt

Du kannst (und solltest!) jedesmal vor dem Zugriff abfragen, ob es überhaupt etwas abzufragen gibt.

Also z.B.:

trData=document.getElementsByTagName("tr")[i];
if(trData.getElementsByTagName("td") && trData.getElementsByTagName("td").length>=2) {
// Zugriff auf die Reihe möglich, da sie mindestens 2 TDs enthält
}

for(var i=0;i<25;i++)

Ach hier kann man mit length arbeiten: i<document.getElementsByTagName("tr").length

Gruß, Cybaer

Danke Cybaer,
aber das Problem scheint ganz wo anders zu liegen.
Ich habe jetzt den Zeilen und Spalten Namen vergeben (name-Objekt) und greife mit "getElementsByName("Datum")[i]" die Datumsspalte direkt an. Es scheint zu funktionieren, wenn ich die Eigenschaft "innerHTML" weglasse. Dann kommt nämlich kein Laufzeitfehler mehr, sondern, dass das Objekt nicht definiert sei. Die Offline-Version von SELFHTML sagt dazu, dass der IE einen Laufzeitfehler bringt, wenn direkt beim Seitenaufbau das Script durchlaufen wird. Deshalb habe ich jetzt eine Funktion mit Link-Aufruf draus gemacht, aber sobald ich ".innerHTML" drin stehen habe bringt er wieder den Laufzeitfehler, dann halt erst, wenn ich die Funktion auslöse.

mfg, Torsten