【问题标题】:Preventing multiple clicks till record is deleted防止多次点击直到记录被删除
【发布时间】:2012-03-11 15:30:35
【问题描述】:

我有一个 HTML 表格。对于每一行,数据库中都有一条记录,在每一行我都有一个删除按钮(图像图​​标)。

删除时我使用 Ajax 请求从数据库中删除记录 成功后,我会显示一条消息,然后从表中隐藏()/删除()行。

它工作正常。 但如果我在多行上单击真正的 FAST,记录会被删除,但仍会显示某些行。

我的点击功能附加到一个类

$(".tog").click(function(e){ ...

我已经阅读了关于 jQuery 的“toggleClass()、delay()”,这些都不起作用。

有什么想法吗?

【问题讨论】:

    标签: jquery ajax html-table click


    【解决方案1】:

    您可以在 ajax 请求进行时使用http://jquery.malsup.com/block/#demos 插件。

    $.ajaxSetup({
        cache:false,
        beforeSend: function() {
           $('#content').block({ 
                  message: ''
                }); 
        },
        complete: function(){
            $('#content').unblock(); 
        },
        success: function() {}
        }); 
    

    用你的主 div ID 替换 #content

    【讨论】:

      【解决方案2】:

      不推荐,但使用Jquery.ajax,您可以使用async:false 选项。

      这样,用户将无法在浏览器上执行任何操作,但浏览器可能会暂时显示为挂起。

      您还可以考虑向用户显示overlay,直到您的请求完成。这样浏览器不会被挂起,您也可以向用户显示一些正在进行的消息。

      【讨论】:

        【解决方案3】:

        在函数中点击你禁用事件

        $(".tog").click(function () { $(this).unbind() ... 
        

        必要时激活

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2020-09-23
          • 1970-01-01
          • 2013-05-18
          • 1970-01-01
          • 2014-11-29
          • 1970-01-01
          相关资源
          最近更新 更多