2010-04-13 30 views
0

如何顯示通常在asp.net頁面中看到的圓形漩渦圖像,同時加載頁面(檢索數據等)?asp.net page「正在加載頁面」

+0

重複的http://stackoverflow.com/questions/750358/with-jquery-how-can-i-implement -a-page-loading-animation – CJM 2010-04-13 14:57:23

回答

2

若你使用的UpdateProgress/UpdatePanel的,下面是一些樣本:http://www.asp.net/Ajax/Documentation/Live/overview/UpdateProgressOverview.aspx

下面是使用一個的UpdateProgress加載GIF樣本:

<asp:UpdateProgress ID="updProg" AssociatedUpdatePanelID="updPnl" DisplayAfter="0" runat="server"> 
    <ProgressTemplate> 
     <div id="progInd"> 
      <img id="indic" src="/images/loadgifs/z.gif" alt="..." /> 
     </div> 
    </ProgressTemplate> 
</asp:UpdateProgress> 

<asp:ScriptManager ID="sm" runat="server" /> 

<asp:UpdatePanel ID="updPnl" runat="server"> 
<ContentTemplate> 
     ... 
    <asp:Timer ID="tmrTrigPostbk" runat="server" Interval="10" /> 
</ContentTemplate> 
<Triggers> 
    <asp:AsyncPostBackTrigger ControlID="tmrTrigPostbk" EventName="Tick" /> 
</Triggers>  
</asp:UpdatePanel> 

protected void Page_Load(object sender, EventArgs e) 
{ 
    tmrTrigPostbk.Enabled = !IsPostBack; 
} 
1

您使用UpdatePanel嗎?或者您是否使用Jquery這樣的Javascript庫?如果是前者,那麼如果後者(JQuery)可以將漩渦添加到UpdateProgress,則可以在.ajaxStart()方法上觸發圖像。

HTH

+0

都沒有。它是一個簡單的數據檢索和填充文本字段。我想我必須使用UpdatePanel,如果我想要該功能? – user279521 2010-04-13 15:00:07

1

我使用了jQuery插件BlockUI爲了使這件事變得相當容易,即使在頁面的某個區域內,也可以說一個對話框。

http://malsup.com/jquery/block/

這裏是做一個AJAX調用服務器的例子:

function GetNewContactInfo(contactId) { 

    if (0 === contactId) { 
     showErrorMsg('You must select a Contact to Retrieve'); 
     return; 
    } 

    var request = { 
     ContactId: 0 
    }; 

    wjBlockUI(); 

    request.ContactId = contactId; 

    ContactServiceProxy.invoke({ serviceMethod: "GetContact", 
     data: { request: request }, 
     callback: function(response) { 
      DisplayNewContactInfo(response); 
     }, 
     error: function(xhr, errorMsg, thrown) { 
      postErrorAndUnBlockUI(xhr, errorMsg, thrown); 
     } 
    }); 

} 

裏面的DisplayNeewContactInfo功能我叫$ .unblockUI();把信息帶走。我有BlockUI call的包裝函數的調用實際:

function wjBlockUI(msg) { 

var defaultMsg = '<img src="../images/activity.gif" />'; 

if (null !== msg) { 
    defaultMsg = msg 
} 

$.blockUI({ overlayCSS: { backgroundColor: '#aaa' }, message: defaultMsg }); 

}

您可以下載這些例子來自的整個項目,http://professionalaspnet.com/WCFJQuery.zip