• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

nodevalue in firefox zu klein

vanGoss

Neues Mitglied
Gute Nacht ;)

hab mal wieder ein Problem:
Ich hab auf einer Seite ein Ajax Script, das dynamischen Content laden soll. Den erhält es mittels XML, verarbeitet diesen und gibt den aus. Hat alles geklappt, bis jetzt der Content 'zu groß' wurde.
Bis jetzt hats so funktioniert:
Code:
field.innerHTML = html.firstChild.nodeValue;
Nach einem Hinweis diese Seite hab ichs folgendermasen geändert:
Code:
if(html.firstChild.childNodes.length == 0){
                                        field.innerHTML = html.firstChild.nodeValue;
                                    }else{
                                        for(k = 0; k < html.firstChild.childNodes.length; k++){
                                          alert(k);
                                          field.innerHTML += html.firstChild.childNodes[k].nodeValue;
                                          //alert(k+0.5);
                                        }
                                    }
Es funktioniert aber trotzdem nicht...


Kann mir bitte jemand sagen wo mein Fehler liegt

Gruß vanGoss

PS: der obere Code gibt was aus(bloß halt zu wenig), es liegt also ned an eventuellen Variablenfehlern...
PPS: Ach ja der obere Code erzeugtin IE und Opera des richtige, also halt alles
 
Werbung:
Hast du mal html.firstChild.nodeValue bzw die Details zu den Childnodes ausgegeben (oder zumindest die Länge), um zu kontrollieren, ob nicht am Ende der Quelltext schon zu kurz ist.
 
Werbung:
also ich muss mich noch mal genauer ausdrücken(sry dass ich das bis jetzt noch nicht gemacht habe)

Es ist garantiert aller Quelltext vorhanden, das habe ich überprüft indem ich mir die Request Location angeschaut habe und auch den Request Response. Da war alles vollständig.
Das nur ein Teil ausgegeben wird, hab ich dadurch überprüft, indem ich es mir in einen Div über allem anderen ausgegeben habe(in php noch mal mit htmlentities() verschlüsselt). Da war nur ein Teil des Quelltextes zu sehen.

Das Problem ist also, was Firefox mit dem Zeug macht.
Und wenn es, so wie in dem Artikel beschrieben, in childNodes aufgespalten wird, warum dann
Code:
if(!html.firstChild.hasChildNodes()){
immer true ist.
Wie kann ich also an die Daten rankommen?



Gruß vanGoss
 
Gute Nacht wiedermal,

Ich glaube ich habe das Problem gelöst.
Als ich gerade eine Lösung suchte, die das eigentliche Problem umgangen hätte(die Antwort des Servers in kleinere Teile aufsplitten), ist mir ein Fehler in meinem Code bewusst geworden: ich hatte ein firstChild zu viel.

Jetzt hab ich das geändert und hab den Server die Antwort wieder zusammenfügen lassen und siehe da, es stimmt was auf der Seite steht: Firefox splittet die Node selber auf.

Sry, dass ich doch nicht den ganzen Code dargelegt hatte =(

Gruß
vanGoss
 
Zurück
Oben