【问题标题】:Show modal/loading screen while gridview and AD query running on page load在页面加载时运行 gridview 和 AD 查询时显示模式/加载屏幕
【发布时间】:2015-04-14 14:10:16
【问题描述】:

我一直在网上查看大量示例,但它们似乎都与按钮或其他事件相关联。我有一个页面(默认)将数据加载到网格视图中,然后检查每条记录中的用户帐户以查看它是否存在于 AD 中。根据分阶段帐户的数量,这可能需要一分钟。我不在乎,但客户在加载时不希望出现空白屏幕。我知道这是可能的,但我未能从互联网上获得正确的代码。我知道这可能是多余的,但有人能指出我正确的方向吗?我在 VS 2010 中使用 C# ASP.NET。

谢谢 EFD

【问题讨论】:

    标签: gridview modal-dialog modalpopupextender


    【解决方案1】:

    您可以使用更新面板:

    <asp:UpdatePanel ID="updatepanel" runat="server" updatemode="always">
        <ContentTemplate>
          code here...
        </ContentTemplate>
    </asp:UpdatePanel>

    添加一个显示图像或“请稍候”文本的 div 和一个 Modal Popupextender 以显示该 div:

    <div id="AlertDiv" class="Progress" style="display: none;">
      <img alt="progress" src="images/progress.gif"/ height="40" width="40" />     
    </div>
        <asp:Button ID="hidIsNewPageLoad" runat="server" style="display:none; " />
     <asp:ModalPopupExtender
            BackgroundCssClass="modalBackground"
            runat="server"
            PopupControlID="AlertDiv"
            id="modalProgress" 
            TargetControlID = "hidIsNewPageLoad"
             />

    最后,添加 Javascript 以在加载过程中显示/隐藏按钮:

    function BeginRequestHandler(sender, args) {
        $find('modalProgress').show();
    }
    function EndRequestHandler(sender, args) {
        $find('modalProgress').hide();
    }
    $(document).ready(NewLoad);
    function NewLoad()
    { Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(BeginRequestHandler);
        Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
    }

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-11-24
      • 2014-10-04
      • 2013-10-21
      • 2013-05-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多