Динамическое добавление большего количества полей формы в таблицу не меняет высоту строки - PullRequest
0 голосов
/ 31 августа 2009

На этой странице у меня есть форма для ввода информации о студентах в данном списке. Каждый студент указан в таблице с выпадающим списком и полем комментариев. Для каждого учащегося есть кнопка «Добавить еще», так что если пользователь хочет ввести второе примечание об учащемся, он может это сделать.

Нажатие на кнопку запускает эту функцию JavaScript:

var counter=1;
function multipleDemerits(studentID) {
counter++;
var anotherDemeritRow = "<select name='behavior_"+studentID+"_"+counter+"'><option value=0>Select  --></option><option value=0></option><option value=0>1 demerit behaviors</option><option value=1>&nbsp;&nbsp;unprepared</option><option value=2>&nbsp;&nbsp;incomplete hw</option><option value=3>&nbsp;&nbsp;electronics/phone</option><option value=4>&nbsp;&nbsp;uniform</option><option value=5>&nbsp;&nbsp;talking/making noise</option><option value=0></option><option value=0>2 demerit behaviors</option><option value=6>&nbsp;&nbsp;tardy</option><option value=7>&nbsp;&nbsp;wasting time</option><option value=8>&nbsp;&nbsp;food/gum</option></select>&nbsp;&nbsp;Comments: <input name='comments_"+studentID+"_"+counter+"' type='text' size='30' maxlength='100'/><br />&nbsp;";
document.getElementById(studentID).innerHTML += anotherDemeritRow;
}   

Новое раскрывающееся поле и поле комментариев прекрасно отображаются в браузерах Mac, но не так в Windows Firefox или IE. Высота текущей строки таблицы не увеличивается, поэтому дополнительные поля начинают перекрывать остальные строки таблицы. НЕ то, что я хочу вообще.

Есть идеи от экспертов по браузерам Windows? Спасибо!

Обновление: изменено на jQuery's добавление ... без разницы. Однако, если я добавлю оператор оповещения в самое начало функции, СЕЙЧАС это работает. А?!?!

Ответы [ 2 ]

1 голос
/ 31 августа 2009

Я думаю, вы должны использовать ' append () ' вместо 'innerHTML', так как это решает некоторые проблемы рендеринга таблиц в Firefox и IE.

0 голосов
/ 31 августа 2009

Не могли бы вы сделать так, чтобы строки таблицы отображались в блоке? Это может исправить высоту.

Сообщает ли Windows Firefox о проблемах со страницей?

...