Maison > interface Web > js tutoriel > le corps du texte

Quelles sont les conséquences de l'utilisation de document.write() dans les fonctions JavaScript ?

DDD
Libérer: 2024-10-24 07:38:02
original
736 Les gens l'ont consulté

What are the Consequences of Using document.write() in JavaScript Functions?

Comportement de Document.write() dans les appels de fonction

Dans un document HTML, appeler document.write() dans une fonction peut avoir des conséquences inattendues, comme le montre le code suivant :

<code class="html"><input type="checkbox" name="thebox" />
<input type="button" onClick="validator()" name="validation" value="Press me for validation" /></code>
Copier après la connexion
<code class="javascript">function validator() {
    if (document.myForm.thebox.checked)
        document.write("checkBox is checked");
    else
        document.write("checkBox is NOT checked");
}</code>
Copier après la connexion

Problème :Après avoir cliqué sur le bouton de validation, les éléments du formulaire (case à cocher et bouton) disparaissent de la page.

Explication :

document.write() est une fonction puissante qui écrit directement dans le flux de sortie du document HTML. Lorsqu'elle est appelée dans une fonction, document.write() a les implications suivantes :

  • Le flux de sortie du document est probablement déjà fermé lorsque la fonction est invoquée car le chargement du document est terminé.
  • L'appel de document.write() sur un flux fermé ouvre automatiquement le document, écrasant son contenu existant.

Dans ce cas, lorsque validator() est appelé, document.write() rouvre automatiquement le document , qui efface toute la page, y compris les éléments du formulaire.

Solution :

Pour éviter ce comportement, il convient d'utiliser des méthodes alternatives pour manipuler le contenu du document, telles que document.createElement() ou les API de manipulation DOM.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!