Rumah >hujung hadapan web >Soal Jawab bahagian hadapan >pilih tukar acara jquery
select change event jquery
Dalam pembangunan web, kami sering menghadapi keperluan untuk memantau perubahan dalam pilihan senarai juntai bawah dalam masa nyata Apabila pengguna memilih pilihan dalam senarai juntai bawah, lakukan yang sepadan tindakan berdasarkan pilihan yang dipilih. Untuk mencapai fungsi ini, kita boleh menggunakan acara change() jquery untuk bertindak balas kepada situasi di mana senarai juntai bawah diubah.
Mula-mula kita perlu menggunakan teg 221f08282418e2996498697df914ce4e dalam HTML untuk membuat senarai lungsur dan menambah pilihan padanya. Kemudian gunakan jquery untuk menangkap peristiwa change() senarai juntai bawah itu. Fungsi pengendalian peristiwa change() boleh mendapatkan nilai pilihan yang sedang dipilih dan melaksanakan operasi yang sepadan. Berikut ialah contoh mudah:
<select id="fruit"> <option value="apple">Apple</option> <option value="orange">Orange</option> <option value="banana">Banana</option> <option value="peach">Peach</option> </select> <script> $("#fruit").change(function(){ var selectedFruit = $(this).val(); alert("You selected " + selectedFruit); }); </script>
Dalam contoh di atas, #fruit digunakan untuk mendapatkan elemen pilih dan kaedah change() digunakan untuk mengikat pengendali acara. Apabila pengguna memilih pilihan dalam elemen pilih, kami akan mendapat nilai pilihan dan memaparkannya dalam tetingkap pop timbul.
Beroperasi berdasarkan pilihan yang dipilih, setiap nilai pilihan boleh diproses secara berasingan dan bukannya menggunakan pernyataan suis. Dalam contoh berikut, kami menggunakan pernyataan if untuk menetapkan warna latar belakang halaman kepada warna yang berbeza bergantung pada pilihan yang dipilih.
<select id="color"> <option value="red">Red</option> <option value="green">Green</option> <option value="blue">Blue</option> </select> <script> $("#color").change(function(){ var selectedColor = $(this).val(); if(selectedColor == 'red'){ $('body').css('background-color', 'red'); } else if(selectedColor == 'green'){ $('body').css('background-color', 'green'); } else if(selectedColor == 'blue'){ $('body').css('background-color', 'blue'); } }); </script>
Dalam contoh ini, kami terus menggunakan kaedah change() untuk mengikat acara dan menggunakan pernyataan if dalam fungsi pengendali acara untuk menetapkan warna latar belakang halaman kepada warna yang berbeza berdasarkan yang dipilih warna barang.
Jika anda perlu mendapatkan data daripada pelayan, anda boleh menggunakan permintaan asynchronous ajax dan memproses data selepas data dikembalikan. Contoh di bawah menunjukkan cara menggunakan permintaan ajax untuk mendapatkan data.
<select id="fruit"> <option value="apple">Apple</option> <option value="orange">Orange</option> <option value="banana">Banana</option> <option value="peach">Peach</option> </select> <div id="output"></div> <script> $("#fruit").change(function(){ var selectedFruit = $(this).val(); $.ajax({ url: 'getFruitInfo.php', data: {fruit: selectedFruit}, success: function(data){ $("#output").html(data); } }); }); </script>
Dalam contoh ini, kami masih menggunakan kaedah change() untuk mengikat acara dan menggunakan permintaan ajax untuk mendapatkan maklumat buah yang dipilih daripada pelayan. Permintaan akan dihantar ke halaman getFruitInfo.php dengan parameter bernama "buah" yang nilainya ialah buah yang dipilih pada masa ini. Dalam permintaan ajax, fungsi panggil balik kejayaan juga ditakrifkan, yang memaparkan data yang dikembalikan dalam div dengan id "output".
Ringkasan
Menggunakan acara change() hanya boleh mendapatkan nilai item yang dipilih pengguna daripada senarai juntai bawah. Dan lakukan operasi yang berbeza berdasarkan pilihan yang dipilih. Gunakan permintaan ajax untuk mendapatkan data dan memprosesnya secara tidak segerak untuk mencapai fungsi yang lebih lengkap. Menggunakan acara change() dalam JavaScript ialah teknik yang sangat berguna yang boleh membantu pembangun melaksanakan aplikasi web mesra pengguna.
Atas ialah kandungan terperinci pilih tukar acara jquery. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!