¿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.
$("[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.
Комментарии
Отправить комментарий