Saya memiliki tautan ini di halaman HTML saya:
<a href = ""
onclick = "setBodyHtml ('new content'); return false; "
> click here </a>
Fungsi setBodyHtml () didefinisikan sebagai:
function setBodyHtml (s)
{ document.body.innerHTML = s;
}
Ketika saya mengklik tautan, tautan itu menghilang dan teks yang ditampilkan di peramban berubah menjadi "konten baru".
Tetapi jika saya menghapus "false" dari tautan saya, mengklik tautan itu tidak (sepertinya) tidak berarti apa-apa. Mengapa demikian?
Itu karena jika saya tidak mengembalikan false, perilaku default mengklik tautan dan menampilkan halaman targetnya terjadi, tidak dibatalkan. TETAPI, di sini href dari hyperlink adalah "" sehingga tautan kembali ke halaman SAMA saat ini. Jadi halaman itu secara efektif hanya di-refresh dan sepertinya tidak terjadi apa-apa.
Di latar belakang fungsi setBodyHtml () masih dieksekusi. Ini memberikan argumennya ke body.innerHTML. Tetapi karena halaman tersebut segera di-refresh / dimuat ulang, isi tubuh yang dimodifikasi tidak tetap terlihat selama lebih dari beberapa milidetik mungkin, jadi saya tidak akan melihatnya.
Contoh ini menunjukkan mengapa terkadang BERMANFAAT untuk menggunakan "return false".
Saya ingin menetapkan BEBERAPA href ke tautan, sehingga ditampilkan sebagai tautan, seperti teks yang digarisbawahi. Tapi saya tidak ingin klik ke tautan secara efektif hanya memuat ulang halaman. Saya ingin navigasi standar = perilaku dibatalkan dan efek samping apa pun yang disebabkan oleh pemanggilan fungsi saya untuk mengambil dan tetap berlaku. Karena itu saya harus "mengembalikan salah".
Contoh di atas adalah sesuatu yang akan Anda coba dengan cepat selama pengembangan. Untuk produksi, Anda akan lebih cenderung menetapkan penangan-klik dalam JavaScript dan panggil preventDefault () sebagai gantinya. Tetapi untuk percobaan cepat, "return false" di atas akan berhasil.