Rumah >hujung hadapan web >tutorial js >Bagaimanakah JavaScript Boleh Menghalang Penyerahan Borang yang Tidak Diingini?

Bagaimanakah JavaScript Boleh Menghalang Penyerahan Borang yang Tidak Diingini?

Linda Hamilton
Linda Hamiltonasal
2024-12-17 20:49:14314semak imbas

How Can JavaScript Prevent Unwanted Form Submissions?

Mencegah Penyerahan Borang dengan JavaScript

Apabila mengesahkan borang menggunakan JavaScript, adalah penting untuk menghalang penyerahan dalam senario kegagalan tertentu. Dalam artikel ini, kami akan meneroka kaedah untuk menghentikan penyerahan borang dan mengendalikan situasi ini.

Memulangkan Palsu daripada Fungsi JavaScript

Satu kaedah untuk menghentikan penyerahan borang ialah dengan mengembalikan palsu daripada fungsi JavaScript. Apabila butang hantar diklik, fungsi pengesahan dipanggil. Jika syarat tertentu dipenuhi, fungsi bernama returnToPreviousPage() akan digunakan.

function returnToPreviousPage() {
    window.history.back();
}

Walau bagaimanapun, fungsi ini pada masa ini mengubah hala pengguna ke halaman sebelumnya dan bukannya menghalang penyerahan. Untuk menyelesaikan isu ini, kami boleh menggunakan teknik lain.

preventDefault() dan validateForm()

Pendekatan biasa ialah menggunakan kaedah preventDefault() bersama-sama dengan fungsi validateForm().

<form onsubmit="event.preventDefault(); validateMyForm();">

Fungsi validateMyForm() akan kembali palsu jika pengesahan gagal. Ini menghalang borang daripada diserahkan.

Menggunakan Nilai Pulangan Fungsi

Pilihan lain ialah menggunakan nilai pulangan fungsi pengesahan untuk mengelakkan penyerahan.

<form name="myForm" onsubmit="return validateMyForm();">

Fungsi pengesahan boleh dilaksanakan seperti berikut:

function validateMyForm() {
  if (conditions not met) {
    alert("Validation failed");
    returnToPreviousPage();
    return false;
  }

  alert("Validation passed");
  return true;
}

Kaedah ini membolehkan anda untuk memberikan mesej ralat khusus dan mengendalikan navigasi halaman berdasarkan hasil pengesahan.

Pertimbangan Keserasian

Perlu diperhatikan bahawa penyemak imbas tertentu, seperti Chrome 27.0.1453.116 m , mungkin memerlukan menetapkan medan returnValue parameter pengendali acara kepada palsu untuk pendekatan ini kerja.

Atas ialah kandungan terperinci Bagaimanakah JavaScript Boleh Menghalang Penyerahan Borang yang Tidak Diingini?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn