【问题标题】:Why does my ASP.NET UpdatePanel caused full page postback?为什么我的 ASP.NET UpdatePanel 会导致整页回发?
【发布时间】:2012-01-30 19:38:38
【问题描述】:

我已经通过 Google 和 Stack Overflow 搜索过这个,但我发现是空的。

我有一个在 IIS 6 上运行的 ASP.NET 3.5 Web 应用程序,它使用的是 UpdatePanel。每当我单击应该导致异步回发的控件时,我都会得到一个完整的页面回发。可以肯定的是,我将 http://ajax.net-tutorials.com/controls/updatepanel-control/ 中的代码复制到了我的应用程序的新页面中,它工作正常。我错过了什么?

<asp:ScriptManager ID="ScriptManager1" runat="server" />
<asp:UpdatePanel ID="pnlAdd" runat="server">
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="btnRefreshCaptcha" EventName="Click" />
    </Triggers>
    <ContentTemplate>
        <asp:Literal ID="litTest" runat="server" />
        <asp:LinkButton ID="btnRefreshCaptcha" runat="server" 
            onclick="lbnRefreshCaptcha_Click" Text="Refresh code" />
    </ContentTemplate>
</asp:UpdatePanel>

感谢任何帮助。谢谢!

【问题讨论】:

  • 链接和您的代码的唯一区别是更新模式,但我认为这不会导致这种情况。您的代码是否在任何其他控件中?
  • 我和妻子坐在沙发上时,一闪而过。面板外部有一个验证摘要,其中包含一些必需的字段验证器。我不认为它是相关的,所以我没有在这里发布 - 但它是!它实际上并没有发回整个页面,而是试图验证空文本框。解决方案:将 CausesValidation="false" 添加到异步回发触发按钮。我为弄清楚它而感到宽慰,为错过如此基本的东西而感到愚蠢。谢谢!

标签: asp.net ajax updatepanel


【解决方案1】:

我只是将我的评论从上面粘贴到这里。这是我在这里的第一篇文章,所以我不知道“回答”这个大按钮。 :-|

我和妻子坐在沙发上时,一闪而过。面板外部有一个验证摘要,其中包含一些必需的字段验证器。我不认为它是相关的,所以我没有在这里发布 - 但它是!它实际上并没有发回整个页面,而是试图验证空文本框。解决方案:将 CausesValidation="false" 添加到异步回发触发按钮。我为弄清楚它而感到松了一口气,为错过了一些如此基本的东西而感到愚蠢。谢谢!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-07-21
    • 1970-01-01
    • 1970-01-01
    • 2012-05-24
    • 1970-01-01
    • 2010-09-18
    • 2010-10-18
    • 1970-01-01
    相关资源
    最近更新 更多