Rumah > hujung hadapan web > tutorial js > Apakah Akibat Menggunakan document.write() dalam Fungsi JavaScript?

Apakah Akibat Menggunakan document.write() dalam Fungsi JavaScript?

DDD
Lepaskan: 2024-10-24 07:38:02
asal
856 orang telah melayarinya

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

Gelagat Document.write() dalam Panggilan Fungsi

Dalam dokumen HTML, memanggil document.write() dalam fungsi boleh mempunyai akibat yang tidak dijangka, seperti yang dilihat dalam kod berikut:

<code class="html"><input type="checkbox" name="thebox" />
<input type="button" onClick="validator()" name="validation" value="Press me for validation" /></code>
Salin selepas log masuk
<code class="javascript">function validator() {
    if (document.myForm.thebox.checked)
        document.write("checkBox is checked");
    else
        document.write("checkBox is NOT checked");
}</code>
Salin selepas log masuk

Isu: Selepas mengklik butang pengesahan, elemen borang (kotak semak dan butang) hilang daripada halaman.

Penjelasan:

document.write() ialah fungsi berkuasa yang menulis terus ke aliran keluaran dokumen HTML. Apabila dipanggil di dalam fungsi, document.write() mempunyai implikasi berikut:

  • Strim output dokumen mungkin sudah ditutup apabila fungsi dipanggil kerana dokumen telah selesai dimuatkan.
  • Memanggil document.write() pada strim tertutup secara automatik membuka dokumen, menimpa kandungan sedia ada.

Dalam kes ini, apabila validator() dipanggil, document.write() membuka semula dokumen secara automatik , yang mengosongkan keseluruhan halaman, termasuk elemen borang.

Penyelesaian:

Untuk mengelakkan tingkah laku ini, seseorang harus menggunakan kaedah alternatif untuk memanipulasi kandungan dokumen, seperti document.createElement() atau API manipulasi DOM.

Atas ialah kandungan terperinci Apakah Akibat Menggunakan document.write() dalam Fungsi JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan