У меня есть форма, которая отправляет данные на ту же страницу. Основываясь на выборе переключателя пользователя, я вставляю checked = "checked" в элемент формы переключателя, чтобы повторно отобразить правильный выбор. Это прекрасно работает, однако, когда форма отображается повторно (в случае плохой записи и т. Д.), Мне нужно открыть div (содержащий соответствующие поля из формы).Автоматическое создание div в зависимости от статуса переключателя с JavaScript
У меня есть событие onclick, которое показывает div в первую очередь (до того, как пользователь разместил форму), и это отлично работает, но когда я перерисовываю форму, я не хочу, чтобы пользователю приходилось вручную раскрывать форму снова щелкнув.
Поэтому я кой-что вдоль следующие линии (сильно вырублены для целей этого поста) пытаюсь ...
<link href="styles/style1.css" rel="stylesheet" type="text/css" />
<script language="JavaScript">
if (document.getElementById('complete_yes').checked) {
document.getElementById('repair_complete').style.display = 'block';
} else {
document.getElementById('repair_complete').style.display = 'none';
}
</script>
<form action="javascript_test.php" method="POST">
<input id="complete_yes" type="radio" name="complete" checked="checked" value="true"/>Yes
<input id="complete_no" type="radio" name="complete" value="false"/>No
<input type="submit" value="Save">
<div id="repair_complete">
I'm a div!
</div>
... но он возвращает Требуются объект яваскрипт ошибки (как это делает в 'реальной' страницы):
Сообщение: требуется объект
Line: 3
Char: 1
код: 0
URI: http://localhost/repair_system/javascript_test.php
Почему это? Не правильно ли я ссылаюсь на элемент формы? Извиняюсь, если я являюсь «div» (преднамеренный плохой каламбур!), Мне еще предстоит узнать о забавах и играх javascript!
Использование onload - довольно стандартный подход, но если у вас большие ресурсы на странице, это может вызвать задержку между рендерингом разметки и запуском вашего скрипта. См. Http: // stackoverflow.com/questions/473628/what-external-resources-are -load-when-window-onload-event-is -ired-and-what-для получения дополнительной информации о порядке событий загрузки. – Joel
Спасибо за ответ - запуск этого кода дает ту же ошибку, хотя ... – cw84