¿Como saber si se ha ejecutado un AJAX y si se ha ejecutado con éxito? - JQuery

estoy haciendo una función de arrastrar y soltar un elemento para eliminar, en un div especifico (draggable y droppable), y quisiera hacer que cuando suelte el elemento en el div droppable y se ejecuta AJAX, si es verdadera, me haga una animación, sino que me haga un revert: true. Para eso, no lo puedo hacer en el droppable, por la cual pensé que en el draggable en el stop:, hacer una function que si se ha ejecutado AJAX con exito, hacer tal función, sino hacer revert: true, pero sin hacer petición ya que hay otro AJAX en el droppable drop: dejo los códigos aquí:
$("[id='actividades']").draggable({
  revert: true,
  start:function(event){
    $(this).css({
      "position":"absolute",
      "transform":"scale(0.8)",
      "z-index":"9999"
    });
    $(".div_eliminacion").animate({
      bottom:"0%"
    },700);
    $("[id='actividades']").mouseenter(function(){
      event1 = $("#identificador");
      event1.preventDefault();
    });
  },
  drag:function(){
    $("[id='actividades']").off("mouseenter");
  },
  stop:function(){
    $(this).css({
      "position":"absolute",
      "transform":"scale(1)",
      "z-index":"9999"
    });
    $(".div_eliminacion").animate({
      bottom:"-20%"
    },700);
    $("[id='actividades']").mouseenter(function(){
      $("#identificador").text($(this).attr('lang'));
    });
    /*La función que pido pienso ponerlo aquí, pero no sé si se tiene que
    poner en el revert*/
  }
});
$(".div_eliminacion").droppable({
  revert:true,
  over:function(){
    $(".div_eliminacion").css("background","rgba(237,28,36,0.2)");
    $(".cls-1-tapa").css({
      "position":"absolute",
      "transform":"rotate(20deg) translate(-12px,-47px)"
    });
  },
  out:function(){
    $(".div_eliminacion").css("background","transparent");
    $(".cls-1-tapa").css({
      "position":"absolute",
      "transform":"rotate(0deg) translate(-15px,-24px)"
    });
  },
  drop:function(){
    var x = confirm("Quieres eliminar esta actividad?");
    var esto = $("#identificador").val();
    if (x== true) {
      var form = $("#form_identificador").serialize();
      var ID_1 = $("#identificador").val();
      $.ajax({
        type:"POST",
        url:"eliminar_educaplay.php",
        data: form,
        success:function(e){
          if (e!=1) {
            alert("Error al eliminar la actividad");
          }else{
            alert("Eliminado correctamente");
          }
        }
      });
    }else{
      return false;
    }
  },
  deactivate:function(){
    $(".div_eliminacion").css("background","transparent");
    $(".cls-1-tapa").css({
      "position":"absolute",
      "transform":"rotate(0deg) translate(-15px,-24px)"
    });
  }
});
En realidad estoy un poco perdido y no se por donde tirar, pensé en hacer eso.
Gracias.

Комментарии

Популярные сообщения из этого блога

Unable to construct Application instance [duplicate]

What is considered 'insulting a Muslim'? And is it a sin? If so, is it a minor or major scene?