2

我注意到 ajax 被多次调用导致 mySQL 中的条目重复。这是怎么回事?任何人都可以在我的代码中看到任何内容吗?

$("#form-addcomment").live('submit', function(e) {
    e.preventDefault();

    var values = $(this).serializeArray();
    values = $.param(values);

    $.ajax({
        type: "POST", 
        url: "/components/m/actions/index.php", 
        data: "command=comments_add&" + values,
        dataType: "html",
        success: function(data){
            alert(data);
            return false;
        }
    });

    return false;
});
4

1 回答 1

2

您可能遇到了多个事件绑定的问题,这应该可以解决您的问题:

$(document).off('submit', "#form-addcomment").on('submit', "#form-addcomment" ,function(e) {
    e.preventDefault();

    var values = $(this).serializeArray();
    values = $.param(values);

    $.ajax({
        type: "POST", 
        url: "/components/m/actions/index.php", 
        data: "command=comments_add&" + values,
        dataType: "html",
        success: function(data){
            alert(data);
            return false;
        }
    });

    return false;
});

还有其他多事件绑定方式,要了解更多信息,请查看我的另一篇文章并搜索名为“防止多事件绑定/触发”的章节: https ://stackoverflow.com/a/14469041/1848600

于 2013-05-09T20:07:54.513 回答