Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Mencegah Borang daripada Penyerahan Berganda dalam jQuery dengan Plugin?

Bagaimana untuk Mencegah Borang daripada Penyerahan Berganda dalam jQuery dengan Plugin?

Linda Hamilton
Lepaskan: 2024-11-10 20:57:03
asal
623 orang telah melayarinya

How to Prevent Forms from Double Submission in jQuery with a Plugin?

Cara Mencegah Penyerahan Berganda Borang dalam jQuery dengan Pemalam

Mencegah penyerahan semula borang adalah penting apabila pemprosesan mengambil masa di bahagian pelayan. Malangnya, melumpuhkan semua input borang, seperti yang anda cuba menggunakan jQuery, boleh menghalang penyerahan borang dalam sesetengah penyemak imbas.

Kaedah Disyorkan: Pemalam jQuery

Untuk mengelakkan penyerahan dua kali dengan berkesan, kami mengesyorkan pemalam jQuery tersuai:

jQuery.fn.preventDoubleSubmission = function() {
  $(this).on('submit',function(e){
    var $form = $(this);

    if ($form.data('submitted') === true) {
      e.preventDefault();
    } else {
      $form.data('submitted', true);
    }
  });

  return this;
};
Salin selepas log masuk

Penggunaan:

Laksanakan pemalam dengan memilih borang dan menggunakan preventDoubleSubmission():

$('form').preventDoubleSubmission();
Salin selepas log masuk

Penyesuaian:

Jika borang tertentu membenarkan berbilang penyerahan setiap halaman dimuatkan, berikan mereka kelas dan kecualikan mereka daripada pemilih:

$('form:not(.js-allow-double-submission)').preventDoubleSubmission();
Salin selepas log masuk

Pertimbangan Tambahan:

  • Seperti yang dinyatakan dalam jawapan asal, memastikan operasi adalah idempoten ialah penyelesaian yang optimum.
  • Pemalam ini bergantung pada kaedah data() jQuery, yang mungkin tidak disokong oleh pelayar lama. Pertimbangkan keserasian merentas pelayar sebelum pelaksanaan.

Atas ialah kandungan terperinci Bagaimana untuk Mencegah Borang daripada Penyerahan Berganda dalam jQuery dengan Plugin?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan