Rumah > hujung hadapan web > tutorial js > Mengapa Skrip Disuntik AJAX Saya Tidak Dilaksanakan dan Bagaimana Saya Boleh Membetulkannya?

Mengapa Skrip Disuntik AJAX Saya Tidak Dilaksanakan dan Bagaimana Saya Boleh Membetulkannya?

Susan Sarandon
Lepaskan: 2024-11-19 17:09:03
asal
987 orang telah melayarinya

Why Don't My AJAX-Injected Scripts Execute, and How Can I Fix It?

Cara Melaksanakan Skrip yang Disuntik melalui innerHTML selepas AJAX

Memasukkan kandungan HTML secara dinamik melalui AJAX adalah amalan biasa. Walau bagaimanapun, kadangkala kandungan ini termasuk tag skrip yang perlu dilaksanakan. Walau bagaimanapun, skrip ini mungkin tidak dilaksanakan secara automatik apabila disuntik melalui innerHTML.

Masalah:

Pertimbangkan div bernama "Kandungan" yang harus diisi dengan data daripada fail PHP melalui AJAX, termasuk tag skrip. Walau bagaimanapun, skrip dalam teg tidak dilaksanakan:

<div>
Salin selepas log masuk

Penyelesaian:

Untuk melaksanakan skrip yang disuntik melalui innerHTML, anda boleh menggunakan kod berikut:

var arr = MyDiv.getElementsByTagName('script');
for (var n = 0; n < arr.length; n++)
    eval(arr[n].innerHTML);//run script inside div
Salin selepas log masuk

Kod ini berulang melalui semua teg skrip dalam div dan menilai innerHTML mereka sebagai JavaScript.

Atas ialah kandungan terperinci Mengapa Skrip Disuntik AJAX Saya Tidak Dilaksanakan dan Bagaimana Saya Boleh Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan