Предварительная загрузка в asp.net - PullRequest
0 голосов
/ 29 сентября 2011

я очень хочу узнать, как работает предварительная загрузка в asp.net?
например, при нажатии на кнопку появляется анимированный GIF, а через несколько секунд появляется панель или элемент Div! (как и во многих местах в Facebook)
как я могу сделать это в asp.net?
(jquery необходим для выполнения этой работы? если да, то какие плагины?)

1 Ответ

1 голос
/ 29 сентября 2011

Сначала идет загрузка страницы

 protected override void OnInit(EventArgs e)
    {
        base.OnInit(e);
        pnlLoading.Visible = true;
    }

Второй раз, когда у меня есть панель обновлений, я использую Update Progress для автоматической обработки.

В-третьих, для вызовов ajax с использованием jQuery. Когда я собираюсь сделать вызов ajax, я использую это

$('#<%=updProgress.ClientID %>').css("display", "block");

и когда вызов ajax заканчивается, я использую это

 $('#<%=updProgress.ClientID %>').css("display", "none");

Вот мой индикатор загрузки в разметке. Эти два находятся сразу после тега body.

  <asp:Panel ID="pnlLoading" runat="server" Visible="true">
    <div class="progressBackgroundFilter">
    </div>
    <div class="processMessage">
        <img src="/_layouts/Img/ajax-loader.gif" alt="Loading" />
    </div>
</asp:Panel>
<asp:UpdateProgress ID="updProgress" runat="server">
    <ProgressTemplate>
        <div class="progressBackgroundFilter">
        </div>
        <div class="processMessage">
            <img src="/_layouts/Img/ajax-loader.gif" alt="Loading" />
        </div>
    </ProgressTemplate>
</asp:UpdateProgress>

И когда страница загружена, я использую это

 $(document).ready(function () {
        var objdiv = $('#<%=pnlLoading.ClientID%>');
        if (objdiv) {
            objdiv.css('visibility', 'hidden');
        }
        $('#<%=updProgress.ClientID%>').css("display", "none");     
    });

Надеюсь, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...