Ankündigung

Einklappen
Keine Ankündigung bisher.

Problem mit JS&IE: "Unknown runtime error" + g

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Problem mit JS&IE: "Unknown runtime error" + g

    Folgende Testseite:
    Code:
    <html>
    <head>
        <script>
        function doIt() {
            document.getElementById("tbodyid").innerHTML = "<tr><td>Seite</td><td>geladen!</td></tr>"
        }
        </script>
    </head>
    
    <body onload="doIt()">
        <table>
            <thead>
                <tr><th>A</th><th>B</th></tr>
            </thead>
    
            <tbody id="tbodyid">
                <tr><td>Bitte</td><td>warten</td></tr>
            </tbody>
        </table>
    </body>
    
    </html>
    Das ganze klappt nur mit Firefox!

    Problem beim IE: Zuerst passiert einfach nichts, unten links erscheint, dass die Seite ganz normal geladen wurde. Nach paar mal Aktualisieren bringt der IE einen "Unknown Runtime Error" mit dem Verweis auf die Zuweisung um JS-Code.

    Problem beim Opera: Die Seite lädt, aber er ignoriert die tr- und td-Tags. Der Text "Seitegeladen!" sthet einfach in einer Zelle.

    Mach ich da was falsch oder machen die Browser da mal wieder Blödsinn?

  • #2
    dazu sagt selfhtml

    Die Eigenschaft innerHTML sollten Sie nicht direkt beim Einlesen der HTML-Datei anwenden, sondern immer erst abhängig von Aktionen wie Verweisklicks oder Button-Klicks oder mit einem setTimeout() von einigen Sekunden davor. Bei Anwendung direkt beim Einlesen der Datei meldet der Internet Explorer 4.0 einen Laufzeitfehler.

    Kommentar


    • #3
      Danke für Antwort, ändert aber leider nichts.

      Edit: Kann es sein dass die Browser das ändern von Tabellenlayouts nicht unterstützen? Wenn ich die gesamte Tabelle geht es Nur Leider muss ich dann immer mehr nachladen (AJAX)

      Kommentar


      • #4
        Zitat von nikosch77
        Die Eigenschaft innerHTML sollten Sie nicht direkt beim Einlesen der HTML-Datei anwenden, sondern immer erst abhängig von Aktionen wie Verweisklicks oder Button-Klicks oder mit einem setTimeout() von einigen Sekunden davor. Bei Anwendung direkt beim Einlesen der Datei meldet der Internet Explorer 4.0 einen Laufzeitfehler.
        Das macht BobBraumeister quasi schon durch das onLoad.


        Das Problem liegt daran, dass innerHTML für den IE bei tbody "readonly" ist:

        Zitat von http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/reference/properties/innerhtml.asp
        The property is read/write for all objects except the following, for which it is read-only: COL, COLGROUP, FRAMESET, HTML, STYLE, TABLE, TBODY, TFOOT, THEAD, TITLE, TR. The property has no default value.

        Kommentar


        • #5
          Ach son Mist Naja mach ich eben immer eine ganz neue Tabelle, trotzdem vielen Dank!

          Kommentar

          Lädt...
          X