簡體   English   中英

AsyncPostBackTrigger沒有更新更新面板

[英]AsyncPostBackTrigger is not updating the update panel

我在ASP.NET(.ascx文件)的用戶控件內使用更新面板。 以下是我的HTML標記

<asp:ScriptManager EnablePartialRendering="true"
                   ID="ScriptManager1" runat="server"></asp:ScriptManager>
<div>        
    <asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional" ChildrenAsTriggers="true" >
        <ContentTemplate>
            <asp:Label ID="Label1" runat="server" /><br />
            <asp:Button ID="Button1" runat="server" Text="Update Panel" OnClick="Button1_Click" />                
        </ContentTemplate>
        <Triggers>
            <asp:AsyncPostBackTrigger ControlID="Button1" EventName="Click">
           </asp:AsyncPostBackTrigger>
        </Triggers>
    </asp:UpdatePanel>
</div>

這是我的代碼背后

public partial class sample: System.Web.UI.Control
{
    protected void Button1_Click(object sender, EventArgs e)
    {

        Label1.Text = DateTime.Now.ToLongTimeString();
        UpdatePanel1.Update();
    }

}

如果我使用PostBackTrigger,那么它可以正常工作,但是回發整個頁面(這是我不想要的),我只需要刷新更新面板即可。

這是我的aspx頁面標記(它是Sitecore驅動的網站,因此所有子布局都加載到Sitecore占位符中)

<form id="form2" runat="server">
    <section class="page">
        <sc:Placeholder runat="server" ID="mainPlaceholder" Key="content" />
    </section>
</form>

抱歉,由於某些安全原因,無法發布整個頁面

謝謝

一些嘗試。 (這對我來說可以。)

  1. 確保您沒有2個腳本管理器,一個在頁面上,一個在控件上。 aspx頁面上的一個就足夠了。
  2. 從aspx頁面刪除用戶控件,然后再次添加用戶控件。 將您的用戶控件拖到aspx頁面上,以確保它已在頁面頂部注冊。
  3. 刪除觸發器; 您不需要它們。

您還設置了一些等於默認值的屬性,因此可以將其刪除:

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

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
    <ContentTemplate>
        <asp:Label ID="Label1" runat="server" /><br />
        <asp:Button ID="Button1" runat="server" Text="Update Panel"
            OnClick="Button1_Click" />                
    </ContentTemplate>
</asp:UpdatePanel>

protected void Button1_Click(object sender, EventArgs e)
{
    Label1.Text = DateTime.Now.ToLongTimeString();
    //UpdatePanel1.Update();
}

最后,我找到了解決此問題的解決方案。 我的整個HTML標記保持不變,只需要注釋或刪除觸發器即可。 我只是評論了標簽的內部HTML,它一切都按預期工作。

暫無
暫無

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

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