Wdrażając kolejny firmowy projekt natknąłem się na pewien błąd. Mimo walidowania się kodu oraz poprawnego wyświetlania w nowoczesnych przeglądarkach, w IE6 otrzymywałem komunikat:
Could not get the display property. Invalid argument.
Stworzyłem dynamiczny formularz, w formie tabeli. Wiersze są chowane i pokazywane w zależności od wybranej opcji w polu select.
Z chowaniem nie było problemu:
$("#tr_amount").css("display","none");
Problem powstał podczas pokazywania wiersza. Użycie:
$("#tr_amount").css("display","table-row");
powoduje w/w błąd i formularz nie działa. Inline i block psują wygląd w innych przeglądarkach.
Rozwiązaniem problemu jest użycie tricku:
$("#tr_amount").css("display","");
Taki zabieg powoduje prawidłowe działanie i wygląd we wszystkich przeglądarkach.
Błąd ten nie odnosi się oczywiście tylko do jQuery. W moim przypadku tak było, więc przykłady są z wykorzystaniem jQuery.
1 comment