使用 AJAX / PHP显示和隐藏加载

rsaldnfx  于 2023-01-29  发布在  PHP
关注(0)|答案(1)|浏览(119)

我试着做一些基本的事情,但我阻止。
我想向div添加一个类,以便在单击"GO"时加载,并在得到答案时删除该类。
我的代码是:

$.ajax({
          url: "/send_email",
          type: "POST",
          data: $('form').serialize(),
          beforeSend: function() {
           $('div.loading').classList.add('d-block');
          },
          })
          .done(function(response) {
            $('div.loading').classList.remove('d-block')
            $('div.message').html(response);
          });   
      return false;
  };

HTML为:

<div class="loading">Loading</div>

我做错了什么?
实际上,页面重新加载,并在控制台中,我得到:无法读取未定义的属性(读取"add")
我试着单独找到我的div,我得到了它!
我想显示和隐藏加载程序

ktecyv1j

ktecyv1j1#

您混淆了jQuery代码和非jQuery代码,可以使用.toggleClass()

$('div.loading').toggleClass('d-block');

classListthe element itself的一部分,而不是jQuery对象,您可以从jQuery访问它:

$('div.loading').get(0).classList.add('d-block');

但是这样做没有多大意义,因为您已经在使用jQuery,所以最好保持一致。
实际上是页面重载
这听起来像是一个完全独立的问题,并且存在于所示代码之外。This可能会有帮助,但我们所能做的只是猜测,因为所示代码没有演示这个特定的问题。

相关问题