【问题标题】:Freeze all in page with jquery when user fire click当用户触发点击时,使用 jquery 冻结页面中的所有内容
【发布时间】:2023-03-12 08:48:02
【问题描述】:

我有一个网格视图,其中一个模板字段列内有一个自动回发复选框,我需要自动回发来计数、验证和同步服务器端的模型,然后无法关闭自动回发。
我不能使用 ajax,因为它是一个项目限制,不能做任何事情。
我需要冻结每个事件触发中的所有页面,以避免用户单击另一个复选框,直到上一个回发完成,并避免用户在回发之间触发其他事件。
我很抱歉不要发布到 jsfiddler 的链接,但不能在那里模拟 asp.net 回发。
我在脚本元素中使用 folowind jquery,这个脚本元素在顶部的标题元素中:

<head id="Head2" runat="server">
    <title></title>
    <script type="text/javascript" src="../../scripts/jquery-1.6.2.min.js"></script>
        <script type="text/javascript">
            $(document).ready(function () {
                $(':checkbox').parent().click(function (event) {                
                    alert(event.target.id);      // <<<<<< dont work if removed !!!
                    $(document).find('*')
                            .attr('disabled', 'disabled')
                            .removeAttr('href')
                            .css('color', 'grey');
                    return true;

                });
            });
        </script>
</head>
<body>

为了让它以正确的方式工作,我需要在上面评论警报,这个警报对我来说没用,对用户来说很烦人,但如果删除回发不会很好地触发,看起来页面已重新加载并加载网格和所有形式干净,就像第一次发布一样。 为什么无法删除此警报?

【问题讨论】:

    标签: jquery asp.net postback viewstate


    【解决方案1】:

    为什么不等操作完成后在整个页面上显示一个透明的div,完成后再隐藏呢?

    $(document).ready(function () {
                    $(':checkbox').parent().click(function (event) {                
                        //Show a transparent div
                        $("<div style='position:absolute' />")
                        .height($(document.body).height())
                        .width($(document.body).width())
                        .css("opacity", "0.5");
                        .appendTo(document.body);
    
    
                    });
                });
    

    【讨论】:

    • 我建议让用户有机会“关闭”透明 div,以防您的流程失败。如果经过给定的秒数,您可以使用 setTimeout 显示关闭按钮。
    • 是的,如果进程失败,我们应该关闭这个div。
    【解决方案2】:

    不要禁用元素,在所有内容前面放置一些东西,就像“正在加载...”的 div。请求完成后隐藏元素。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-05
      • 2013-03-27
      相关资源
      最近更新 更多