Saya mendapat kesan bahwa saya bisa mendapatkan nilai input pilih dengan melakukan ini $(this).val();
dan menerapkan onchange
parameter ke bidang pilih.
Tampaknya hanya berfungsi jika saya referensi ID.
Bagaimana saya melakukannya menggunakan ini.
.change()
pintasan saja.Ini berfungsi jika Anda berlangganan secara tidak mencolok (yang merupakan pendekatan yang disarankan):
jika Anda menggunakan
onselect
dan mencampur markup dengan skrip, Anda harus memberikan referensi ke elemen saat ini:lalu:
sumber
Ini membantu saya.
Untuk pilih:
Untuk radio / kotak centang:
sumber
Coba metode delegasi acara, ini bekerja di hampir semua kasus.
sumber
Anda dapat mencoba ini (menggunakan jQuery ) -
Atau Anda dapat menggunakan Javascript sederhana seperti ini-
sumber
sumber
Fungsi panah memiliki cakupan yang berbeda dari fungsi,
this.value
akan memberikan undefined untuk fungsi panah. Untuk memperbaiki penggunaansumber
Inilah yang bekerja untuk saya. Mencoba yang lain tanpa hasil:
Diambil dari Mozilla
sumber
Cari situs jQuery
HTML:
JAVASCRIPT:
Contoh jQuery:
Untuk menambahkan tes validitas ke semua elemen input teks:
sumber
Untuk semua pilihan, aktifkan fungsi ini.
Untuk hanya satu pilih:
sumber
jQuery mendapatkan nilai elemen html tertentu menggunakan pada acara Change
Untuk Demo & Contoh Lainnya
sumber
Perhatikan bahwa jika ini tidak berfungsi, itu mungkin karena DOM belum dimuat dan elemen Anda belum ditemukan.
Untuk memperbaikinya, letakkan skrip di ujung badan atau gunakan dokumen siap
sumber
sumber
Biarkan saya berbagi contoh yang saya kembangkan dengan BS4, thymeleaf, dan boot Spring.
Saya menggunakan dua SELECT, di mana yang kedua ("subtopik") diisi oleh panggilan AJAX berdasarkan pemilihan yang pertama ("topik").
Pertama, potongan thymeleaf:
Saya mengulangi daftar topik yang disimpan dalam konteks model, menunjukkan semua grup dengan topik mereka, dan setelah itu semua topik yang tidak memiliki grup. BaseIdentity adalah BTW kunci komposit @Embedded.
Sekarang, inilah jQuery yang menangani perubahan:
Panggilan perubahan awal () memastikan akan dieksekusi pada pemuatan ulang halaman atau jika suatu nilai telah dipilih sebelumnya oleh beberapa inisialisasi di backend.
BTW: Saya menggunakan validasi formulir "manual" (lihat "is-valid" / "is-invalid"), karena saya (dan pengguna) tidak suka bahwa BS4 menandai bidang kosong yang tidak diperlukan sebagai hijau. Tapi itu byond lingkup Q ini dan jika Anda tertarik maka saya dapat mempostingnya juga.
sumber
Saya ingin menambahkan, yang membutuhkan fungsionalitas tajuk khusus penuh
sumber