Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 31.10.2012, 19:20
Новичок на форуме
Отправить личное сообщение для LiSS Посмотреть профиль Найти все сообщения от LiSS
 
Регистрация: 31.10.2012
Сообщений: 2

Не работает 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';
Подскажите, пожалуйста, в чем может проблема.

Последний раз редактировалось LiSS, 31.10.2012 в 19:23.
Ответить с цитированием
  #2 (permalink)  
Старый 31.10.2012, 23:17
Новичок на форуме
Отправить личное сообщение для LiSS Посмотреть профиль Найти все сообщения от LiSS
 
Регистрация: 31.10.2012
Сообщений: 2

Спасибо всем! Проблема решена следующим образом: в коде

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]
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ява-скрипт выборочно работает-не работает zeta777 Internet Explorer 0 20.01.2010 11:41
Динамическая HTML форма (FireFox - работает, IE - не работает) dm1tr1y Общие вопросы Javascript 10 11.12.2009 15:59
не работает вперед/назад при передаче параметров странице hoid Я не знаю javascript 10 03.06.2009 16:09
JS меню работает на обычной html странице, а на юкозовском движке нет. adware Я не знаю javascript 10 16.05.2009 16:48
Спойлер работает только на один объект на странице. Shanks Общие вопросы Javascript 4 10.05.2009 14:53