ホームページ >ウェブフロントエンド >jsチュートリアル >Document.write() が JavaScript 関数のフォーム要素を削除するのはなぜですか?
Document.write() とページ レンダリング
Web 開発では、 document.write() メソッドがフォーム要素を削除することはまれです。関数内で呼び出されたときに画面から。ただし、特定のシナリオでは、実際にこの効果が生じる可能性があります。
document.write() について
document.write() は主にコンテンツを直接書き込むために使用されます。 HTML ドキュメントの出力ストリーム。このストリームは通常、ページが最初に読み込まれるときに作成され、ページのレンダリングが終了したときに閉じられます。
ケーススタディ: フォーム要素のクリア
提供されたコード スニペットでは、 document.write() メソッドは、「検証のために押してください」ボタンのクリック イベントに応答して、validator() 関数内で呼び出されます。この呼び出しは、「thebox」チェックボックスの状態に応じてメッセージを表示することを目的としています。
ただし、validator() 関数の呼び出し時にドキュメントの出力ストリームが閉じられる可能性があるために問題が発生します。通常、このストリームは、ページがすべてのリソースの読み込みを完了した後に閉じられます。 document.write() が閉じられたストリームで呼び出されると、自動的に document.open() が呼び出され、フォーム要素を含むドキュメント全体がクリアされます。
Solution
フォーム要素がクリアされないようにするには、次のようなドキュメントのコンテンツを動的に更新するための代替メソッドを使用することをお勧めします。
以上がDocument.write() が JavaScript 関数のフォーム要素を削除するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。