Table, innerHTML и IE

Если вы любите работать с AJAX, то вероятно часто используете свойство innerHTML. И как вы возможно уже на опыте убедились, работать с div-элементами проще, хотябы потому что IE тоже умеет динамически изменять их содержание через это свойство.

Другое дело таблицы. Если в Firefox вы можете создать пустую таблицу и по ID запросто передать innerHTML очередного ряда, то IE работает по-старинке и хочет полное соблюдение древовидной структуры, которую можно изменять только через функции appendChild и removeChild:

Получается что приходится создавать отдельно ряд, отдельно ячейки и всё это впихивать по ID в таблицу, а лучше в tbody:

objRow=document.createElement("tr");
objCell1=document.createElement("td");
objCell1.innerHTML='1 cell';
objCell2=document.createElement("td");
objCell2.innerHTML='2 cell';
objRow.appendChild(objCell1);
objRow.appendChild(objCell2);
RSS

Комментарии

  • Yuriy
    avatar
    еще один "плюс" к "дивной" верстке :)
  • Так то оно так, диву даёшься с "див"ом, но иногда таблица уже есть, и всё переписывать неразумно, либо таблица подходит логически (финансовые данные к примеру)
  • makingoff
    Это не ещё один плюс к дивной верстке, это ещё один минус к IE
  • PP
    IE - кал
  • Holy Diver
    avatar
    Ох уж этот IE, надо бы начать массовую акцию по его игнорированию при разработке.