У меня есть форма, которая используется для проведения теста. Пользователь вводит вопрос и предоставляет тип вопроса и варианты ответа, а также сохраняет вопрос. Что пошло не так, так это то, что когда пользователь пишет одну опцию и нажимает кнопку «Добавить в опции», содержимое текстового поля для опций добавляется в DOM для отображения в качестве ответа на вопрос. Это все работало хорошо, пока IE9 не было.
Когда пользователь нажимает кнопку «Добавить к параметрам», опция отображается в DOM, но в IE9 значение не добавляется.
Функция, которая добавляет опцию к DOM:
var tbl = document.getElementById('tbl');
var lastRow = tbl.rows.length;
var iteration = lastRow;
var row = tbl.insertRow(lastRow);
arr[ind] = iteration;
var cellLeft1 = row.insertCell(0);
var cellLeft2 = row.insertCell(1);
var cellLeft3 = row.insertCell(2);
if(document.crt_question.test_ans_view[0].checked)
{
if(document.crt_question.test_ans_choice.value=="0") // MCQ with Single Answer (Radio Buttons)
{
var op_val=document.crt_question.test_answer.value;
var words=op_val.split("");
op_val='';
for(i=0;i<words.length;i++)
{
op_val = op_val + words[i].replace('"',"'");
}
cellLeft1.innerHTML = '<div id="button_div'+ind+'" class="dom_"><input type="radio" name="button_'+ind+'" id="button_'+ind+'" value="'+ind+'" ></div>';
cellLeft2.innerHTML = '|<input type="image" src="../../_images/view_del.gif" onclick="return removeRowFromTable('+ ind +')" />|';
var newOption = document.createElement("input");
newOption.name = "test_answer"+ind+"";
newOption.type = "hidden";
newOption.value = op_val;
var newOption2 = document.createElement("input");
newOption2.name = "view_option"+ind+"";
newOption2.type = "text";
newOption2.value = op_val;
cellLeft3.appendChild(newOption);
cellLeft3.appendChild(newOption2);
ind++;
remove++;
}
}
Таблица, к которой добавляются параметры:
<table id="tbl" border="0" style="padding-left:70px;">
<tr>
<td align="left"></td>
<td align="left" ></td>
<td align="left"></td>
</tr>
</table>
В функции Top я не получаю значение либо из скрытого значения, либо из поля ввода типа TEXT, когда форма отправлена. Это работает в FF и IE8. Кто-нибудь может попасть на эту вещь?
ПРИМЕЧАНИЕ. Этот код выполняется в файле, который включен через IFRAME.