如何检查 AJAX jquery是否正在运行或正在函数中加载

snz8szmq  于 2023-02-03  发布在  jQuery
关注(0)|答案(1)|浏览(123)

我有一个名为“loadloker”的函数,它包含 AJAX jquery函数。我想问一下如何检查这个函数中的ajax是否由于之前已经调用而正在运行。
下面是代码块:

function loadLoker(id, e){
    if(id==currentLokerId) return;

    var url = "{{ route('daftarloker.show', ':id') }}"
    url = url.replace(':id', id);
    $.ajax({
        type: 'POST',
        url: url,
        success: function(res) {
            if(res.success){
                let loker = res.data.data;

                currentLokerId = loker.lokerid;

                $(e).parents('.card').addClass("border border-info border-3");

                $('#lokerPerusahaanNama').text(loker.perusahaan.nama);            

                $('#lokerdetailContainer').show();

                swal.close()
            }else{
                swal({
                    title: "Gagal!",
                    text: "Gagal mendapatkan data dari server",
                    icon: "warning",
                    button: "Ok!",
                    type: "warning",
                });
            }

            $('#lokerdetailloadingContainer').hide();
        },
        error: function (request, status, error) {

            swal("Gagal!", "Gagal mendapatkan data dari server", "error");
        }
    });
}

我期望退出这个函数,如果这个函数中 AJAX 还在运行,

pxiryf3j

pxiryf3j1#

您可以检查$.active属性

function checkAjaxStatus() {
  if ($.active > 0) {
    console.log("request is in progress");
  } else {
    console.log("No request");
  }
}

相关问题