Apabila cuba mencetuskan fungsi JavaScript pada klik hiperpautan tanpa menyebabkan pengalihan halaman, timbul persoalan mengenai penggunaan yang sesuai atribut href dan onclick.
Meletakkan panggilan JavaScript dalam atribut href boleh menyebabkan penyemak imbas melaksanakan kedua-dua kod JavaScript dan pengalihan semula pautan. Tingkah laku ini tidak digalakkan kerana ia boleh membawa kepada hasil yang tidak dijangka.
Penggunaan yang salah:
<a href="javascript:my_function();window.print();">...</a>
Mengikat panggilan JavaScript ke acara onclick memberikan lebih kawalan ke atas tingkah laku. Ia membenarkan pelaksanaan kod JavaScript sambil menghalang ubah hala.
Penggunaan yang disyorkan:
<a href="#" onclick="MyFunction(); return false;">...</a>
"return false;" pernyataan memastikan penyemak imbas tidak mengikut pautan.
Pendekatan terbaik melibatkan penggunaan rangka kerja seperti jQuery untuk melampirkan pengendali acara onclick dengan ID elemen. Ini memberikan fleksibiliti yang lebih besar dan mengelakkan potensi isu dengan penggunaan href.
Penyelesaian optimum:
$('#myLink').click(function() { MyFunction(); return false; });
Atas ialah kandungan terperinci Hiperpautan JavaScript: href vs onclick - Mana yang Terbaik untuk Panggilan Fungsi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!