JAVASCRIPT: IE: outerHTML
Problem, das ich Begegnung mit outerHTML mit IE-Browser
wenn ich sage:
txt="Update Complete!";
msg = sub.appendChild(d.createElement("p"));
msg.outerHTML = txt;
Funktioniert Es Einwandfrei:
Wenn ich aber sage,
txt="1 Error:<ul><li>Some Error</li></ul>";
msg = sub.appendChild(d.createElement("p"));
msg.outerHTML = txt;
Gibt mir eine Fehlermeldung:
Message: Unknown runtime error
Line: 389
Char: 4
Code: 0
URI: http://10.1.1.16/schedule_calendar/js/validate.js
Linie:389 bezieht sich auf "msg".outerHTML = txt;"
Kann mir jemand helfen mit diese.. vielen Dank im Voraus
Naja, ich weiß nicht, ob es definitiv das problem, aber 'ul' ist kein gültiges untergeordnetes element 'p'.
ich bin mir nicht sicher, Sie können auf setzen outerHTML überhaupt. (Sie können mit innerHTML, tho). so oder so, outerHTML ist nicht sehr cross-browser-kompatibel, so würde ich prüfen, nicht verwenden.
innerHTML existiert nicht im IE.. Sie haben innerhtml. aber es zeigt nicht den text. nur speichert es in innerhtml="irgendein text". aber nicht die Anzeige
Justin Johnson, können Sie mir ein Beispiel nennen, vielleicht kann ich die Arbeit rund um Ihre Idee
ich bin mir nicht sicher, Sie können auf setzen outerHTML überhaupt. (Sie können mit innerHTML, tho). so oder so, outerHTML ist nicht sehr cross-browser-kompatibel, so würde ich prüfen, nicht verwenden.
innerHTML existiert nicht im IE.. Sie haben innerhtml. aber es zeigt nicht den text. nur speichert es in innerhtml="irgendein text". aber nicht die Anzeige
innerHTML
existiert im IE, obwohl es ist nur beschreibbar in manchen Situationen (zum Beispiel, können Sie nicht schreiben, dass es für eine tbody
element, aber Sie können für eine p
). outerHTML
ist spezifisch für IE und meines Wissens nach, funktioniert auf keinem anderen browser. Sie sollten es vermeiden.Justin Johnson, können Sie mir ein Beispiel nennen, vielleicht kann ich die Arbeit rund um Ihre Idee
InformationsquelleAutor Treby | 2010-01-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Für einige Gründe, warum weiß ich nicht, in den meisten Fällen ändern outerHTML ist nicht erlaubt.
Ich vermute, dass dies ist, weil, wenn Sie ändern die outerHTML eines Elements, die Sie eigentlich ersetzen des aktuellen Elements.
IMO, es sicherer zu ersetzen, die ein element als eine änderung seines outerHTML.
In Ihrem Fall, vielleicht wird das ja ausreichen:
UPDATES HIER:
ich habe Fehler in "sub.innerHTML = txt;" mit IE-Browser
was ist der Fehler???, Können Sie Ihre aktualisierten code?
Meldung: Objekt unterstützt diese Eigenschaft oder Methode Zeile: 5 Zeichen: 1 Code: 0 URI: localhost/preview/innerhtml.php
Sorry, aber localhost funktioniert nicht hier, können Sie nach dem code pastie.org, dann schickt mir den link, danke
InformationsquelleAutor jerjer
Was ist dein code versuchen zu erreichen? In beiden Fällen können Sie tun:
p
elementp
elementsub
(was ich davon ausgehen ist ein element, das sich selbst als gut)outerHTML
desp
element text.Könnte man genauso gut getan haben:
anfügen, dass
sub
's childnodes:sub.appendChild(document.createTextNode("Update Complete!"));
Oder, wenn
sub
ist eh leer, einfach tun:Also, nutzen Sie einfach
sub.innerHTML
dann.InformationsquelleAutor Roland Bouman