Wrr!!! Dziś w pracy kolejny dzień implementowałem pewną funkcjonalność wykorzystując Ajax'a. Oczywiście standardowo pracuję z Firefoksem i tylko co jakiś czas sprawdzam jak wszystko działa w IE7.I dziś znalazłem kolejnego cosia, który w IE7 nie działa.Działa w Firefoksie i Operze, ale w IE nie. Tym razem niedziałającym cosiem jest dynamiczne podmienianie zawartości rzędu w tabelce. Wartość poszczególnych komórek można spokojnie zmieniać, ale rzędu [czyli nie można zmienić wartości atrybutu innerHTML obiektu TR] już nie...To samo dotyczy zresztą dynamicznej zmiany zawartości tabelki [czyli atrybutu innerHTML dla obiektu TABLE].Szczególnie pomocny był komunikat o błędzie w momencie próby podmiany ;-)Unknown Runtime Error..... to przecież tak wiele mówi ;-)Taki kod:
Kolumna 1 | Kolumna 2 |
gdy go zaatakujemy JavaScript'em:
document.getElementById("row").innerHTML="Toster | ";w Firefoksie i Operze zadziała bez kłopotu, w IE zacznie zgłaszać "Unknown Runtime Error" :-)
Za to wczoraj miałem ponad półgodzinną rozmowę telefoniczną z K :-) [przyjmuje, że to mój prezent urodzinowy ;-) z jednodniowym "opóźnieniem" :-)]Podobne postybetaŚciana, czyli rozbijam się na onclick ;-)Zasada numer 1: sprawdzaj oczywisteLinux to jednak fajny jest ;-)Egipt, Tunezja, Londyn, whatever, czyli chcem na urlopCzemu strony only for IE są złe.
IE is bad. That's why I prefer to limit all of my dynamic dom changes inside a div tag and leave the tables alone, for the most part.
OdpowiedzUsuńAll this to say, I can see why people are going “tableless” these days.
But sometimes, we have table and we want to change only one row in this table.... And in IE it's a problem ;-)
OdpowiedzUsuńIn FF I can use innerHTML and change particular row, in IE I need to change all cells of this row. It is possible but makes code more complicated.
I'm not sure but I suppose that in IE it is possible to use DOM for access to row node and add/remove childNodes, but it's only guess.