Rumah >pembangunan bahagian belakang >tutorial php >Mengapa Peristiwa JavaScript Saya Tidak Mencetuskan Selepas Elemen Dinamik Dilampirkan?
Acara JavaScript Tidak Mencetuskan Selepas Penambahan Elemen Dinamik
Anda menghadapi isu di mana acara JavaScript tidak dicetuskan selepas menambahkan elemen baharu pada DOM . Ini kerana jQuery hanya mengenali elemen yang hadir apabila ia mula dijalankan semasa pemuatan halaman.
Untuk menyelesaikan masalah ini, anda perlu menggunakan perwakilan acara untuk menangkap acara daripada elemen dinamik. Perwakilan acara melibatkan menangkap acara pada tahap yang lebih tinggi dalam DOM yang sudah ada semasa pemuatan halaman. Ini membolehkan acara daripada elemen yang baru ditambah muncul dan dikendalikan.
Dalam kes anda, anda boleh mewakilkan acara klik kepada elemen induk yang hadir semasa pemuatan halaman. Sebagai contoh, anda boleh menukar kod JavaScript anda untuk menggunakan kaedah on() seperti berikut:
$(document).on('click', '.races', function(e) { // Your code here });
Dengan cara ini, sebarang elemen baharu yang ditambahkan dengan kelas ".races" akan mewarisi pengendali acara klik. Ingat untuk menggunakan kaedah on() dan bukannya click() apabila melaksanakan delegasi acara.
Atas ialah kandungan terperinci Mengapa Peristiwa JavaScript Saya Tidak Mencetuskan Selepas Elemen Dinamik Dilampirkan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!