ホームページ >ウェブフロントエンド >jsチュートリアル >document.write() がページをクリアするのはなぜですか?
Document.write がページをクリアするのはなぜですか?
JavaScript で document.write() メソッドを使用するとき、プログラマーはしばしば特有のエラーに遭遇します。動作: onClick などのイベント ハンドラー内で document.write() を呼び出すと、ドキュメントがクリアされる可能性があります。
この予期しない結果を理解するには、document.write() の性質を理解することが不可欠です。この関数は、ブラウザーに表示されているドキュメントを表す連続的なデータ フローであるドキュメント ストリームに書き込みます。
提供されたコード例:
<code class="html"><form name="myForm"> <input type="checkbox" name="thebox" /> <input type="button" onClick="validator()" name="validation" value="Press me for validation" /> </form> <script type="text/javascript"> function validator() { if (document.myForm.thebox.checked) { document.write("checkBox is checked"); } else { document.write("checkBox is NOT checked"); } } </script></code>
validator() 関数「検証」ボタンをクリックするとトリガーされます。何が起こるかは次のとおりです。
結果として、ドキュメント全体が更新され、前の内容が document.write() の出力に置き換えられるため、フォーム要素 (チェックボックスとボタン) がページから削除されます。
したがって、document.write() を使用する場合は、 、ドキュメント ストリームに書き込む前に、 document.open() を明示的に使用して、ドキュメント ストリームが開いたままであることを確認することが重要です。そうしないと、ドキュメントをクリアするという予期せぬ動作により、意図した機能が中断される可能性があります。
以上がdocument.write() がページをクリアするのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。