簡體   English   中英

ASP.NET UpdatePanel不能與Page_Load中的Response.Write一起使用

[英]ASP.NET UpdatePanel dosn't work with Response.Write in Page_Load

我有那個例子:

<asp:ScriptManager ID="ScriptManager1" runat="server">
    </asp:ScriptManager>
    <asp:UpdatePanel ID="UpdatePanel1" runat="server">
        <ContentTemplate>
            <fieldset>
                <legend>UpdatePanel</legend>
                <asp:Label ID="Label1" runat="server" Text="Panel created."></asp:Label><br />
            </fieldset>
        </ContentTemplate>
        <Triggers>
            <asp:AsyncPostBackTrigger ControlID="Button1" />
        </Triggers>
    </asp:UpdatePanel>
    <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" /></div>

protected void Page_Load(object sender, EventArgs e)
{
    // doesn work with:
    Response.Write("eg.");    
}

protected void Button1_Click(object sender, EventArgs e)
{
    Label1.Text = "Refreshed at " + DateTime.Now.ToString();
}

這很好。 當我單擊ButtonLabel更新而不刷新頁面,但是如果我在Page_Load事件中具有Response.Write ,則當我單擊按鈕時, UpdatePanel不起作用,並且需要Page_Load

我該如何解決我的問題? 謝謝。

不要在Page_Load函數中使用Response.Write() ,因為它將破壞UpdatePanel

實際上,使用Response.Write()通常不是一個好主意,因為您無法控制DOM寫入內容的最終位置。 相反,如果您需要一些簡單的調試輸出,請使用其他方法,例如System.Diagnostics.Debug.WriteLine() 或者,如果您需要向DOM中添加內容,則添加諸如Label的控件並對其進行操作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM