0

Ajaxを使用してレコードを削除し、このレコードが削除されたときにアニメーションメッセージを表示します(関数display_message)が、レコードの数に応じて確認ボックスがポップアップすることに気付きました. たとえば、リストに 2 つのレコードがあり、そのうちの 1 つを削除したい場合、削除する前に確認ボックスが 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);
  }
 )

}

4

1 に答える 1

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()回避策として、最後のアニメーションのみをトリガーするように呼び出すことができると思います...

于 2012-09-28T22:26:24.743 に答える