Когда нажата любая из радиокнопок, видимость тега select не меняется. Просто ничего не происходит, даже ошибок.
Это моя первая попытка использовать JavaScript, и я потратил около 4 дней, просматривая различные примеры, чтобы сделать это. Я чувствую, что мой синтаксис и размещение всего правильное. Я не понимаю, чего мне, возможно, не хватает.
Используя вкладку Inspector "Inspect Element Q", при проверке rad ios ничего не меняется. Я просто подумал об этом. Я не знаю, как использовать отладчик.
Перед тем, как опубликовать это здесь, я поместил размещенный здесь код в JSfiddle. Он там работает: включение и выключение выпадающего списка. Итак, на моей странице PHP может быть что-то еще.
Вот мой код:
<head>
<script type="text/javascript">
function hasClass(){
var checked_yes = document.getElementById("hasClass_yes").checked;
var checked_no = document.getElementById("hasClass_no").checked;
if(checked_yes) {
document.getElementById("class_drop_list").style.visibility="visible";
} else if(checked_no){
document.getElementById("class_drop_list").style.visibility="hidden";
}
}
</script>
</head>
<tr>
<td>Does the monster have a class?
<label for="hasClass_yes">Yes
<input type="radio" id="hasClass_yes" name="hasClass" onclick="hasClass();" />
</label>
<label for="hasClass_no">No
<input type="radio" id="hasClass_no" name="hasClass" onclick="hasClass();" />
</label>
<select style="visibility:" id="class_drop_list" name="monsters_class">
<option value="Adept">Adept</option>
<option value="Barbarian">Barbarian</option>
<option value="Cavalier">Cavalier</option>
<option value="Cleric">Cleric</option>
<option value="Druid">Druid</option>
<option value="Healer">Healer</option>
<option value="Jumper">Jumper</option>
<option value="Marshalist">Marshalist</option>
<option value="Rogue">Rogue</option>
<option value="Rook">Rook</option>
<option value="Sorcerer">Sorcerer</option>
<option value="Swashbuckler">Swashbuckler</option>
<option value="Witch">Witch</option>
<option value="Wizard">Wizard</option>
</select>
</td>
</tr>
Я тоже пробовал этот скрипт
<script type="text/javascript">
function hasClass(){
var checked_yes = document.getElementById("hasClass_yes");
var class_drop_list_on = document.getElementById("class_drop_list");
class_drop_list_on.style.visibility = checked_yes.checked ? "visibility" : "visible";
}
</script>