В IE не работает динамическое изменение colspan, нужна помощь!
У меня возникла проблемка, нужно динамически менять colspan у таблицы, а в ie не работает, в опере работает :mad:
У кого нибудь была такая проблема ? |
Ну разве никто не сталкивался ????
Ну помогите кто-нить разобраться, пожалуйста. |
пример покажи, мы посмотрим, а самим писать - лень...
|
хорошо, вот пример:
var table = document.createElement('table');
table.id = this.id;
table.className = this.class_name;
/* head */ ..... /* end head */
/* body */ ..... /* end body */
/* foot */
var tfoot = document.createElement('tfoot');
if(this.footer_list instanceof JsArrayIterator)
{
var rs = this.footer_list;
for(rs.rewind(); rs.valid(); rs.next())
{
var tr_foot = document.createElement('tr');
var td_foot = document.createElement('td');
td_foot.innerHTML = rs.current();
td_foot.setAttribute('colspan', this.column_list.count());
tr_foot.appendChild(td_foot);
tfoot.appendChild(tr_foot);
}
}
/* end foot */
table.appendChild(thead);
table.appendChild(tbody);
table.appendChild(tfoot);
Вообщем вот этот самый td_foot.setAttribute(....) не работает в ie, хоия в опере проверял работатет. |
ну вот... Выясняется, что ты коллспан футэру таблицы задаёшь...
Это вообще неоднозначный элемент и никто им не пользуется (я лично ни разу не пользовался). Может и не будет работать... Даже пробовать не хочу (причём этот кусок кода я НЕ могу просто скопировать и открыть в браузере чтобы посмотреть в действии)... |
Ну елки, вот кусок который можно посмотреть:
var table = document.createElement('table');
var thead = document.createElement('thead');
var tr_head = document.createElement('tr');
var th = document.createElement('th');
th.innerHTML = 'заголовок 1';
tr_head.appendChild(th);
var th = document.createElement('th');
th.innerHTML = 'заголовок 2';
tr_head.appendChild(th);
thead.appendChild(tr_head);
var tfoot = document.createElement('tfoot');
var tr_foot = document.createElement('tr');
var td_foot = document.createElement('td');
td_foot.innerHTML = 'нет данных';
td_foot.setAttribute('colspan', 2);
tr_foot.appendChild(td_foot);
tfoot.appendChild(tr_foot);
table.appendChild(thead);
table.appendChild(tfoot);
|
Всмысле футер тут не причём, как разница, если убрать футер тоже самое будет, ie при интерпретации не учтёт colspan
|
Extasy,
td_foot.setAttribute('colSpan', 2);
|
Изменить colspan на colSpan (JS чувствителен к регистру букв, поэтому второе слово - Span - с большой буквы (в виду правил именования переменных и свойст))
И все будет работать, даже в IE подпись, MiXrakep |
| Часовой пояс GMT +3, время: 12:21. |