Apakah ada cara untuk menggunakan onclick
atribut html untuk memanggil lebih dari satu fungsi JavaScript?
javascript
html
methods
onclick
Qcom
sumber
sumber
Jawaban:
Tapi sungguh, Anda lebih baik tidak menggunakan
onclick
sama sekali dan melampirkan pengendali acara ke simpul DOM melalui kode Javascript Anda. Ini dikenal sebagai javascript yang tidak mencolok .sumber
onclick=""
tidakonClick=""
. Itu kesalahan yang sangat umum.jsx
tidakhtml
dan pertanyaan ini belum ditandaijsx
Tautan dengan 1 fungsi ditentukan
Memecat beberapa fungsi dari
someFunc()
sumber
Ini adalah kode yang diperlukan jika Anda hanya menggunakan JavaScript dan bukan jQuery
sumber
Saya akan menggunakan
element.addEventListener
metode untuk menghubungkannya ke suatu fungsi. Dari fungsi itu Anda dapat memanggil beberapa fungsi.Keuntungan yang saya lihat dalam mengikat suatu peristiwa ke fungsi tunggal dan kemudian memanggil beberapa fungsi adalah bahwa Anda dapat melakukan beberapa pengecekan kesalahan, memiliki beberapa pernyataan if else sehingga beberapa fungsi hanya dipanggil jika kriteria tertentu dipenuhi.
sumber
Tentu, cukup ikat beberapa pendengar.
Short cutting with jQuery
sumber
ES6 Bereaksi
sumber
Anda dapat mencapai / memanggil satu acara dengan satu metode atau lebih.
sumber
Anda dapat menambahkan beberapa hanya dengan kode bahkan jika Anda memiliki
onclick
atribut kedua dalam html itu diabaikan, danclick2 triggered
tidak pernah dicetak, Anda bisa menambahkan satu pada aksimousedown
tetapi itu hanya solusi.Jadi yang terbaik untuk dilakukan adalah menambahkannya dengan kode seperti pada:
Anda perlu berhati-hati karena acara dapat menumpuk, dan jika Anda ingin menambahkan banyak acara, Anda dapat kehilangan urutan pesanan yang dijalankan.
sumber
Satu tambahan, untuk JavaScript yang dapat dipelihara adalah menggunakan fungsi bernama.
Ini adalah contoh fungsi anonim:
Tetapi bayangkan Anda memiliki beberapa dari mereka melekat pada elemen yang sama dan ingin menghapus salah satunya. Tidak mungkin untuk menghapus fungsi anonim tunggal dari pendengar acara itu.
Sebagai gantinya, Anda dapat menggunakan fungsi bernama:
Ini juga membuat kode Anda jauh lebih mudah dibaca dan dipelihara. Apalagi jika fungsi Anda lebih besar.
sumber
Anda dapat menyusun semua fungsi menjadi satu dan memanggilnya. Perpustakaan seperti Ramdajs memiliki fungsi untuk menyusun beberapa fungsi menjadi satu.
atau Anda dapat menempatkan komposisi sebagai fungsi terpisah dalam file js dan menyebutnya
sumber
Ini adalah alternatif dari brad anser - Anda dapat menggunakan koma sebagai berikut
namun lebih baik untuk TIDAK menggunakan pendekatan ini - untuk proyek-proyek kecil Anda dapat menggunakan onclick hanya jika ada satu pemanggilan fungsi (lebih lanjut: javascript unobtrusive yang diperbarui ).
Tampilkan cuplikan kode
sumber