确认框使用ajax弹出多次

时间:2012-09-28 21:35:03

标签: jquery ajax

当删除此记录时,我正在使用Ajax删除记录并显示动画消息(函数display_message),但我注意到会根据记录数弹出确认框。例如,如果我的列表中有2条记录,我想删除它们。确认框在删除之前弹出两次,同样的事情发生在消息上,它出现两次(我正在使用淡入的消息和出) 等等(3条记录 - > 3条弹出等)。我尝试了很多来解决它,但我没有成功。 这是删除记录的函数:

$(function() {
$(".delete_class").click(function() {
var id = $(this).attr("id");
var dataString = 'id='+ id ;
var parent = $(this).parent().parent();
if(confirm("are you sure?")) {
$.ajax({
type: "POST",
url: "delete.php",
data: dataString,
cache: false,
success: function()
    {
   parent.hide();
    }
 });
}
display_message("user deleted!")
}); 
});

请帮忙。

编辑:这是display_message函数:

function display_message(msg) {
  $(".success").html(msg).effect("drop", { mode: "show", direction: "up" }, function( {
     window.timer = function() {
       $(".success").effect("drop", { mode: "hide", direction: "up"});
     }
window.setTimeout("window.timer()", 3000);
  }
 )

}

1 个答案:

答案 0 :(得分:0)

function display_message(msg) {
    $(".success").stop().html(msg).effect("drop", { mode: "show", direction: "up" }, function({
        window.timer = function() {
            $(".success").effect("drop", { mode: "hide", direction: "up"});
    } window.setTimeout("window.timer()", 3000);
});

我认为您可以调用stop()仅触发上一个动画作为解决方法...