Функция validator() срабатывает при нажатии кнопки «проверка». Вот что происходит:

  1. В этот момент документ, скорее всего, завершил загрузку, что означает, что поток документов закрыт.
  2. Вызов document.write() автоматически запускает document.open( ), который очищает текущий документ, удаляя все существующие элементы.
  3. Впоследствии текст, указанный в document.write(), отображается в теперь пустом document.

Следовательно, элементы формы (флажок и кнопка) удаляются со страницы, поскольку весь документ обновляется, заменяя предыдущее содержимое выводом document.write().

Поэтому при работе с document.write() крайне важно убедиться, что поток документов остается открытым, используя метод document.open() явно перед записью в него. В противном случае непредсказуемое поведение очистки документа может нарушить запланированную функциональность.

","image":"http://www.luping.net/uploads/20241031/17303378466722dc365be49.jpg","datePublished":"2024-11-08T15:59:11+08:00","dateModified":"2024-11-08T15:59:11+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}
«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Почему document.write() очищает страницу?

Почему document.write() очищает страницу?

Опубликовано 8 ноября 2024 г.
Просматривать:835

Why Does document.write() Clear the Page?

Почему Document.write очищает страницу?

При использовании метода document.write() в JavaScript программисты часто сталкиваются со странной поведение: вызов document.write() в обработчике событий, например onClick, может привести к очистке документа.

Чтобы понять этот неожиданный результат, важно понять природу document.write(). Эта функция записывает данные в поток документов, который представляет собой непрерывный поток данных, представляющих документ, отображаемый в браузере.

В приведенном примере кода:

Функция validator() срабатывает при нажатии кнопки «проверка». Вот что происходит:

  1. В этот момент документ, скорее всего, завершил загрузку, что означает, что поток документов закрыт.
  2. Вызов document.write() автоматически запускает document.open( ), который очищает текущий документ, удаляя все существующие элементы.
  3. Впоследствии текст, указанный в document.write(), отображается в теперь пустом document.

Следовательно, элементы формы (флажок и кнопка) удаляются со страницы, поскольку весь документ обновляется, заменяя предыдущее содержимое выводом document.write().

Поэтому при работе с document.write() крайне важно убедиться, что поток документов остается открытым, используя метод document.open() явно перед записью в него. В противном случае непредсказуемое поведение очистки документа может нарушить запланированную функциональность.

Заявление о выпуске Эта статья перепечатана по адресу: 1729722995. В случае каких-либо нарушений, пожалуйста, свяжитесь с [email protected], чтобы удалить ее.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3