UpdatePanel触发器导致整页回发

时间:2015-05-10 21:42:27

标签: c# asp.net ajax

我有两个下拉列表,其中一个在更新面板内,另一个在外面。当在ddlFaculty上更改索引时,整个页面将被回发而不是部分用于更新面板中的内容。

我已经在ASP文档中看到,有时验证控件会使更新面板陷入困境,但我不太确定这是否存在问题。

auto_id

2 个答案:

答案 0 :(得分:1)

尝试使用AsyncPostBackTrigger的{​​{1}}属性。

请参阅:How to stop UpdatePanel from causing whole page postback?

  

您是否尝试在触发器部分将Button1设置为AsyncPostBackTrigger,将ChildrenAsTriggers属性设置为true,将UpdateMode属性设置为Conditional

其他解决方案:

User control inside update panel causing full page postback

  

如果您的UpdatePanel无法将其内容呈现给a(例如,当它位于其中时),则会发生完全回发。所以检查一下UpdatePanel里面的html,你可能会在那里找到答案(另外,找一些不正确的xhtml,比如错误关闭的元素)。

UpdatePanel causes full page postback

  

除非您知道您的网站在XHTML模式下运行时遇到的已知问题(以及您还没有时间修复),我总是建议您从web.config文件中删除该部分(或者您可以明确地将其设置为“Transitional”或“Strict”)。

     

这将使您的HTML输出标准符合要求。除此之外,这将导致服务器控件中的HTML“格式良好” - 意味着打开和关闭标记元素始终匹配。当您使用AJAX技术动态替换页面上某些HTML元素的内容时,这一点尤为重要(否则客户端JavaScript有时会对容器元素产生混淆并导致错误)。它还将确保ASP.NET AJAX与您的站点一起正常工作。

答案 1 :(得分:0)

事实证明,该页面实际上发送了部分回发,但是当回发被收回作为整页回发时,我错误地将滚动条错误地转到页面顶部