Skript läuft korrekt durch, trotzdem Fehlermeldung!
Yadgar
- javascript
High!
An sich habe ich jetzt den Bogen mit der Javascript-generierten Gliederung aus... aber als ich heute mein Script an eine etwas andere Dokumentstruktur (mit Tabelle) anpasste, bekam ich immer wieder die Meldung "knoten has no properties (line 104)" - die Zeile habe ich im Code entsprechend markiert!
Wie werde ich diese Fehlermeldung los? Ich sehe weit und breit keinen Deklarationsfehler, zumal die auf knoten zurückgehenden Unterobjekte ja auch fehlerfrei verwendet werden...
Bis bald im Khyberspace!
Yadgar
var h=1;
var i=1;
do
{
knoten = document.getElementById("haupt").getElementsByTagName("tr")[h];
sub1 = knoten.firstChild; // Zeile 104!
while (sub1 != null)
{
if (sub1.nodeName == "TD")
{
sub2 = sub1.firstChild;
while (sub2 != null)
{
if (sub2.nodeName == "P")
{
var num = document.createTextNode(i.toString() + ". ");
sub2.insertBefore(num, sub2.firstChild);
i++;
}
if (sub2.nodeName == "DIV")
{
var j = 1;
sub3 = sub2.firstChild;
while (sub3 != null)
{
if (sub3.nodeName == "P")
{
var subnum = document.createTextNode((i-1).toString() + "." + j.toString() + " ");
sub3.insertBefore(subnum, sub3.firstChild);
j++;
}
sub3 = sub3.nextSibling;
}
}
sub2 = sub2.nextSibling;
}
}
sub1 = sub1.nextSibling;
}
h++;
}
while (knoten != null);
Hallo,
prüfe, ob es sich um einen Textknoten (also z.B. Whitespace) oder einen Elementknoten handelt.
Ciao,
Andreas
High!
Hallo,
prüfe, ob es sich um einen Textknoten (also z.B. Whitespace) oder einen Elementknoten handelt.
Es ist ein Elementknoten, und zwar <tr>!
Bis bald im Khyberspace!
Yadgar
Hallo,
Es ist ein Elementknoten, und zwar <tr>!
ähm ja, nach der Zeile "knoten = document.getElementById("haupt").getElementsByTagName("tr")[h];" ist das eigentlich klar.
War wohl noch nicht ganz wach...
;)
Leider habe ich im Moment aber auch keine andere Idee zur Fehlerursache.
Mit der Zeile bist Du ganz sicher?
Ciao,
Andreas
Hallo,
wobei - noch einmal zu dieser Zeile:
knoten = document.getElementById("haupt").getElementsByTagName("tr")[h];
Du setzt ja h auf den Anfangswert 1.
Hat denn das Element "haupt" immer mindestens zwei TR-Kinder?
Beachte auch, daß - falls "haupt" ein TABLE-Element ist - das Kindelement nicht ein TR-Element ist, sondern ein THEAD- oder TBODY-Element!
Ciao,
Andreas
Hallo,
knoten = document.getElementById("haupt").getElementsByTagName("tr")[h];
Beachte auch, daß - falls "haupt" ein TABLE-Element ist - das Kindelement nicht ein TR-Element ist, sondern ein THEAD- oder TBODY-Element!
oh Mann, beachte vor allem heute nichts mehr von dem, was ich schreibe.... Sorry!
Ich glaube, ich ziehe mich für heute mal aus dem Forum zurück und komme erst wieder, wenn ich wieder einen klaren Kopf habe.
:/
Ciao,
Andreas