Не работает DISPLAY=none/block на динамически созданной странице
Доброго вечера всем!
Помогите, пожалуйста разобраться. У меня такой код: <form name="form1" onSubmit="return validate(this);"> <table border="1"> <tr> <th>Учащиеся</th> <th>Математика</th> <th>Физика</th> </tr> <tr> <td>Иванов Иван Иванович</td> <td> <input type="radio" onClick="cont1.style.display='none'; form1.fiz1[0].disabled=true; form1.fiz1[0].checked=false; form1.fiz1[1].disabled=true; form1.fiz1[1].checked=false; form1.fiz1[2].disabled=true; addcertfform.fiz1[2].checked=false;" name="mat1" value="-1" />не явка</BR> <input type="radio" onClick="cont1.style.display='none'; form1.fiz1[0].disabled=true; form1.fiz1[0].checked=false; form1.fiz1[1].disabled=true; form1.fiz1[1].checked=false; form1.fiz1[2].disabled=true; form1.fiz1[2].checked=false;" name="mat1" value="0" />не сдал</br> <input type="radio" onClick="cont1.style.display='block'; form1.fiz1[0].disabled=false; form1.fiz1[1].disabled=false; form1.fiz1[2].disabled=false;" name="mat1" value="1" />сдал</br> </td> <td> <div id="cont1" style='display:none;'> <input type="radio" name="fiz1" id="fiz1" value="-1" />не явка</BR> <input type="radio" name="fiz1" id="fiz1" value="0" />не сдал</br> <input type="radio" name="fiz1" id="fiz1" value="1" />сдал</br> </div> </td> </tr> <tr> <td>Петров Петр Петрович</td> <td> <input type="radio" onClick="cont2.style.display='none';" name="mat2" value="-1" />не явка</br> <input type="radio" onClick="cont2.style.display='none';" name="mat2" value="0" />не сдал</br> <input type="radio" onClick="cont2.style.display='block';" name="mat2" value="1" />сдал</br> </td> <td> <div id="cont2" style='display:none;'> <input type="radio" name="fiz2" id="fiz2" value="-1" />не явка</BR> <input type="radio" name="fiz2" id="fiz2" value="0" />не сдал</br> <input type="radio" name="fiz2" id="fiz2" value="1" />сдал</br></div> </td> </tr> </table> <p> <input type = 'button' name = 'but1' value = 'Сохранить'/> </p> </form> Есть Учащиеся, которым нужно проставить результаты экзаменов. К примеру, Иванов по Математике имеет отметку НЕ ЯВКА или НЕ СДАЛ, то нужно скрыть группу радиобуттонов по Физике. И сделать видимым, если результат экзамена по Математике = СДАЛ. В выше приведенном коде все прекрасно работает. (Первоначально была задача группу радиобуттонов по Физике сделать недоступным, но оставить видимым, что тоже все хорошо работает в коде (form1.fiz1[0].disabled=true; form1.fiz1[0].checked=false; form1.fiz1[1].disabled=true; form1.fiz1[1].checked=false; form1.fiz1[2].disabled=true; form1.fiz1[2].checked=false; ) ) Вопрос в следующем. Когда список учащихся формируется динамически, т.е. из БД вытаскивается список Учащихся, количество которых каждый раз разное в зависимости от заданных условий. echo "<table id='exam' border='0'>"; echo "<tbody>"; echo "<tr><th>Учащиеся</th><th>Математика</th> <th>Физика</th></tr>"; for($i=0;$i<$n;$i++) { echo "<tr> <td>",mysql_result($kur,$i,Fam),"</td> echo "<td> <label> <input type = 'radio' name =mat[".$i."] value='-1' onClick='cont".i.".style.display='none'; form1.fiz".$i."[0].disabled=true; form1.fiz".$i."[0].checked=false; form1.fiz".$i."[1].disabled=true; form1.fiz".$i."[1].checked=false; form1.fiz".$i."[2].disabled=true; form1.fiz".i."[2].checked=false; '>Не явка<br/> </label> <label> <input type = 'radio' name =mat[".$i."] value='0' onClick='cont".i.".style.display='none'; form1.fiz".$i."[0].disabled=true; form1.fiz".$i."[0].checked=false; form1.fiz".$i."[1].disabled=true; form1.fiz".$i."[1].checked=false; form1.fiz".$i."[2].disabled=true; form1.fiz".$i."[2].checked=false;'>Не сдал<br/> </label> <label> <input type = 'radio' name =mat[".$i."] value='1' onClick='cont".$i.".style.display='block'; form1.fiz".$i."[0].disabled=false; form1.fiz".$i."[1].disabled=false; form1.fiz".$i."[2].disabled=false;'>Сдал</label> </td> </tr> } В данном коде пока не нужно было скрыть блок, все работало. Не работает именно cont".$i.".style.display='block'; Подскажите, пожалуйста, в чем может проблема. |
Спасибо всем! Проблема решена следующим образом: в коде
onClick=[COLOR="Red"][B]'[/B][/COLOR]cont".$i.".style.display='block'; form1.fiz".$i."[0].disabled=false; form1.fiz".$i."[1].disabled=false; form1.fiz".$i."[2].disabled=false;[COLOR="Red"][B]'[/B][/COLOR] одиночный апостроф ' заменила на \" onClick=[COLOR="Red"][B]\"[/B][/COLOR]cont".$i.".style.display='block'; form1.fiz".$i."[0].disabled=false; form1.fiz".$i."[1].disabled=false; form1.fiz".$i."[2].disabled=false;[COLOR="Red"][B]\"[/B][/COLOR] |
Часовой пояс GMT +3, время: 00:18. |