ASP.Net Ajax框架 UpdatePanel控件 局部刷新

UpdatePanel控制簡介

        UpdatePanel控件用於局部更新網頁上的內容,

網頁上要局部更新的內容放在UpdatePanel控件的內容模板中,

        其強大之處在於不用編寫任何客戶端腳本,但它必須要和ScriptManager控件一同使用


        UpdatePanel的常用屬性和子元素
        
                  說明
        UpdateMode             
        <ContentTemplate>      子元素 放置更新面板的內容模板,可以在其中添加任何控件
        <Triggers>             子元素 更新面板的觸發器,只要滿足觸發條件才更新<ContenTempate>元素的內容
        ChildrenAsTriggers     屬性,布爾值   指示來自UpdatePanel的子控件的回發是否更新面板內容。如果ChildrenAsTriggers的值爲False 則UpdateMode 必須設置爲Conditional

        
屬性和子元素  說明
UpdateMode              屬性,表示更新面板採用何種方式獲取服務器端的資源。包含兩個值:Alays和Conditional

Always是默認值 表示每次客戶端發出請求都會無條件刷新面板的內容:

Conditional 表示依據觸發條件進行更新,此時需要子元素<Triggers>定義觸發器

<ContentTemplate>  
<Triggers>    
ChildrenAsTriggers  

UpdatePanel控件的使用 

        把要局部刷新的內容放在 UpdatePanel 控件內


  AsyncPostBackTrigge用來指定某個服務器端控件以及其將觸發的服務器端事件作爲該UpdatePanel的異步更新觸發器,

它需要設置的屬性有控件ID和服務端控件的事件;
        PostBackTrigger用來指定在UpdatePanel中的某個服務端控件,它所引發的回送不使用異步回送,而仍然是傳統的整頁回送。
        
        寫個例子:


        updatepanel 中有個button   如果給它設置成PostBackTrigger .點button頁面刷新


        updatepanel 外有個 button 如果給它設置成AsyncPostBackTrigger 點button頁面不刷新


<form id="form1" runat="server">
        <asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
        <div>
            帳號<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        </div>
        <div>
            密碼<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox></div>

            <asp:UpdatePanel ID="UpdatePanel1" runat="server">
                <ContentTemplate>
                      <asp:Label ID="Label1" runat="server" Text=""></asp:Label>
                </ContentTemplate>
                <Triggers>
                    <asp:AsyncPostBackTrigger ControlID="Button1" EventName="Click" />
                </Triggers>
            </asp:UpdatePanel>
           <div>
            <asp:Button ID="Button1" runat="server" Text="登錄"  /></div>
        <asp:Button ID="Button2" runat="server" Text="Button" />
    </form>



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章