从服务器端使用弹出窗口时的BlockUI

omriman12

我正在使用UpdatePanel在较长的过程中阻止UI,我的问题是当我放置一个简单的按钮时它可以工作,但是当按钮在弹出窗口中时它不起作用(只是卡住,直到该过程完成而没有阻止用户界面)。

起作用的代码:

<asp:UpdatePanel runat="server" ID="updatePanel">
  <Triggers>
    <asp:AsyncPostBackTrigger ControlID="lb_start" />
  </Triggers>
  <ContentTemplate>
      <asp:UpdateProgress runat="server" ID="upprogress" AssociatedUpdatePanelID="updatePanel" DisplayAfter="0">
            <ProgressTemplate>
                <div style="position: fixed; text-align: center; height: 100%; width: 100%; top: 0; right: 0; left: 0; z-index: 9999999; background-color: #000000; opacity: 0.7;">
                    <asp:Image ID="imgUpdateProgress" runat="server" ImageUrl="~/images/iguloader-yashar.gif" AlternateText="Loading ..." ToolTip="Loading ..." Style="padding: 10px; position: fixed; top: 45%; left: 50%;" />
                </div>
            </ProgressTemplate>
        </asp:UpdateProgress>
        <asp:LinkButton runat="server" ID="lb_start" class="btn btn-success" OnClick="lb_start_Click"><i class="fa fa-start"></i> Start</asp:LinkButton>            
  </ContentTemplate>
</asp:UpdatePanel>

服务器端:

protected void lb_start_Click(object sender, EventArgs e)
{
    //long process
}

不起作用的代码(使用colorbox.js):

<asp:UpdatePanel runat="server" ID="updatePanel">
  <Triggers>
    <asp:AsyncPostBackTrigger ControlID="lb_start" />
  </Triggers>
  <ContentTemplate>
      <asp:UpdateProgress runat="server" ID="upprogress" AssociatedUpdatePanelID="updatePanel" DisplayAfter="0">
            <ProgressTemplate>
                <div style="position: fixed; text-align: center; height: 100%; width: 100%; top: 0; right: 0; left: 0; z-index: 9999999; background-color: #000000; opacity: 0.7;">
                    <asp:Image ID="imgUpdateProgress" runat="server" ImageUrl="~/images/iguloader-yashar.gif" AlternateText="Loading ..." ToolTip="Loading ..." Style="padding: 10px; position: fixed; top: 45%; left: 50%;" />
                </div>
            </ProgressTemplate>
        </asp:UpdateProgress>
        <a runat="server" id="a_start" class="inline" href="#startModal" title="Start scan"><span  class="btn btn-success"><i class="fa fa-play"></i></span></a>        
  </ContentTemplate>
</asp:UpdatePanel>

<div id="startModal" style="padding:10px; background:#fff;">
    <h2>Start Scan</h2>
    Click ok to continue:
        <asp:LinkButton runat="server" ID="lb_start" class="btn btn-success" OnClick="lb_start_Click"><i class="fa fa-start"></i> Start</asp:LinkButton>
</div>

试着玩一点,有什么想法吗?

泰勒·詹姆斯·哈登(Tyler James Harden)

您可以使用称为blockui的jQuery插件(足够有趣)完成此任务。

这里的链接显示了一个示例:https : //gist.github.com/whoshotjr/3010693

只需包括可从http://malsup.com/jquery/block/获得的jquery.blockui.js

然后在您的项目中包含以下代码:

<script type="text/javascript">
        Page = Sys.WebForms.PageRequestManager.getInstance();
        Page.add_beginRequest(OnBeginRequest);
        Page.add_endRequest(endRequest);

        function OnBeginRequest(sender, args) {
            $.blockUI();
        }
        function endRequest(sender, args) {
            $.unblockUI();
        }

 </script>

由于您正在运行客户端,因此在执行Web请求时几乎总是必须使用Javascript来阻止UI。我在MVC中使用了与此类似的设置,但最终都相同。希望这可以帮助!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Android:使用Parse时使用服务器端

来自分类Dev

在服务器端渲染时使用cookie的ReactJS

来自分类Dev

使用 angular 等框架时服务器上服务器端脚本的文件结构

来自分类Dev

为触发ASP.NET/VB.NET中的模式弹出窗口的按钮添加服务器端事件

来自分类Dev

未在服务器端定义React Gatsby窗口

来自分类Dev

使用Wikipedia API服务器端时,单词显示为乱码

来自分类Dev

使用Bootstrap multiselect时如何在服务器端获取选定的值?

来自分类Dev

使用angular时,是否可以从服务器端加载部分视图?

来自分类Dev

服务器端警告:使用聚合查询时没有分区键

来自分类Dev

MySQL在流ResultSet时是否使用服务器端预取

来自分类Dev

使用StringBuilder生成HTML服务器端时,空格是否重要?

来自分类Dev

使用Meteor和Meteor Up时如何监视服务器端日志

来自分类Dev

仅在初始页面加载时使用服务器端渲染

来自分类Dev

使用angular js时如何执行服务器端重定向

来自分类Dev

仅在执行服务器端数据时在javascript中使用eval是否安全?

来自分类Dev

使用服务器端处理时,防止为初始页面加载数据

来自分类Dev

仅在初始页面加载时使用服务器端渲染

来自分类Dev

使用服务器端渲染时,React Checksum失败

来自分类Dev

Marklogic 服务器端 Javascript:使用显式提交时的 XDMP-CONFLICTINGUPDATES

来自分类Dev

不想在使用 PDFBox 时将创建的 PDF 文件保存在服务器端

来自分类Dev

使用Meteor模拟服务器端渲染

来自分类Dev

使用Firebase进行服务器端计算

来自分类Dev

如何使用Angular 2服务器端渲染

来自分类Dev

如何在服务器端使用JSON Sanitizer?

来自分类Dev

使用DataTables插件的服务器端分页

来自分类Dev

如何使用php构建服务器端脚本

来自分类Dev

使用PHP作为服务器端的Phonegap?

来自分类Dev

使用LINQ实现分页(在服务器端)

来自分类Dev

使用.net渲染React JS服务器端

Related 相关文章

  1. 1

    Android:使用Parse时使用服务器端

  2. 2

    在服务器端渲染时使用cookie的ReactJS

  3. 3

    使用 angular 等框架时服务器上服务器端脚本的文件结构

  4. 4

    为触发ASP.NET/VB.NET中的模式弹出窗口的按钮添加服务器端事件

  5. 5

    未在服务器端定义React Gatsby窗口

  6. 6

    使用Wikipedia API服务器端时,单词显示为乱码

  7. 7

    使用Bootstrap multiselect时如何在服务器端获取选定的值?

  8. 8

    使用angular时,是否可以从服务器端加载部分视图?

  9. 9

    服务器端警告:使用聚合查询时没有分区键

  10. 10

    MySQL在流ResultSet时是否使用服务器端预取

  11. 11

    使用StringBuilder生成HTML服务器端时,空格是否重要?

  12. 12

    使用Meteor和Meteor Up时如何监视服务器端日志

  13. 13

    仅在初始页面加载时使用服务器端渲染

  14. 14

    使用angular js时如何执行服务器端重定向

  15. 15

    仅在执行服务器端数据时在javascript中使用eval是否安全?

  16. 16

    使用服务器端处理时,防止为初始页面加载数据

  17. 17

    仅在初始页面加载时使用服务器端渲染

  18. 18

    使用服务器端渲染时,React Checksum失败

  19. 19

    Marklogic 服务器端 Javascript:使用显式提交时的 XDMP-CONFLICTINGUPDATES

  20. 20

    不想在使用 PDFBox 时将创建的 PDF 文件保存在服务器端

  21. 21

    使用Meteor模拟服务器端渲染

  22. 22

    使用Firebase进行服务器端计算

  23. 23

    如何使用Angular 2服务器端渲染

  24. 24

    如何在服务器端使用JSON Sanitizer?

  25. 25

    使用DataTables插件的服务器端分页

  26. 26

    如何使用php构建服务器端脚本

  27. 27

    使用PHP作为服务器端的Phonegap?

  28. 28

    使用LINQ实现分页(在服务器端)

  29. 29

    使用.net渲染React JS服务器端

热门标签

归档