У меня есть кнопка с 4 состояниями. Я хотел бы знать, как отложить выполнение моего запроса ajax, чтобы иметь только один запрос в конце ...Кнопка 4-государств (с .toggle()) и задержкой Ajax в каждом состоянии
Я имею в виду, если я дважды нажимаю кнопку, я не хочу запускать первую ajax, но только второй после определенного тайм-аута.
$('.btn_mark_erreur').toggle(
function(){
//State 1
var id_erreur = $(this).parent().attr('erreur_num');
$(this).attr('title','Erreur réglée');
$(this).children('img').attr('src','img/erreur_ok.png');
setTimeout(function(){
$.ajax({
type: 'POST',
url: "",
dataType: ($.browser.msie) ? "text" : "xml",
data: "a=maj_statut&data="+donnees ,
succes : function(data) {
console.log(data);}
});
},1000);
},
function(){
//State 2
var id_erreur = $(this).parent().attr('erreur_num');
$(this).attr('title','Erreur en cours');
$(this).children('img').attr('src','img/erreur_encours.png');
setTimeout(function(){
$.ajax({
type: 'POST',
url: "",
dataType: ($.browser.msie) ? "text" : "xml",
data: "a=maj_statut&data="+donnees ,
succes : function(data) {
console.log(data);}
});
},1000);
},
function(){
//State 3
var id_erreur = $(this).parent().attr('erreur_num');
$(this).attr('title','Problème sur cette erreur');
$(this).children('img').attr('src','img/erreur_nok.png');
setTimeout(function(){
$.ajax({
type: 'POST',
url: "",
dataType: ($.browser.msie) ? "text" : "xml",
data: "a=maj_statut&data="+donnees ,
succes : function(data) {
console.log(data);}
});
},1000);
},
function(){
//State 0
var id_erreur = $(this).parent().attr('erreur_num');
$(this).attr('title','Marquer comme...');
$(this).children('img').attr('src','img/erreur_statut.png');
setTimeout(function(){
$.ajax({
type: 'POST',
url: "",
dataType: ($.browser.msie) ? "text" : "xml",
data: "a=maj_statut&data="+donnees ,
succes : function(data) {
console.log(data);}
});
},1000);
}
);
Этот код не работает, у меня есть запрос для каждого штата.
Благодарим за помощь!
Спасибо, я попробую! – Franquis
Работает отлично! – Franquis