首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ASP.NET网页窗体-查看jQuery对话框中页面回发的状态错误

问ASP.NET网页窗体-查看jQuery对话框中页面回发的状态错误
EN

Stack Overflow用户
提问于 2018-08-17 15:23:58
回答 1查看 191关注 0票数 0

我有一个ASP.NET网站,在点击主页按钮后,我尝试使用jQuery对话框从数据库中显示类别/名称的值。

直接在浏览器中运行jQuery对话框中的页面是完美的,但是在jQuery对话框中运行它会在第一次运行时导致此错误。

未登录错误: Sys.WebForms.PageRequestManagerServerErrorException:此页的状态信息无效,可能已损坏。

如果我关闭对话框,并在此错误后再次打开它,它将完美地工作?!我已经阅读了在ViewState和UpdatePanel上所能找到的所有信息,而且通常建议的解决方案都不适合我。我怀疑问题是我的jQuery对话框正在加载一个单独的aspx页面,并且这个页面正在主页面的顶部加载。因此,我的视图状态在回发时对主页无效,而不是jQuery对话框中的页面。

在第一次加载时,页面的任何修改都会发生错误,即设置标签文本、显示/隐藏标签、选择TreeView节点等。基本上,任何修改页面外观的事件都会发生。

另外,我正在将对话框页面加载到主页的对话框div中,这样主页就有了这些控件.

EN

回答 1

Stack Overflow用户

发布于 2018-08-17 18:24:32

使用下面的两个链接,我解决了我的问题。我现在不是直接将aspx页面加载到jQuery对话框中,而是将aspx页面加载到一个iframe中,它位于我的对话框div中(参见第一个链接中的示例)。

jQuery UI Dialog using iframe URL

jQuery UI dialog is setting iframe width automatically

重要的几点:

  • 将aspx页面(直接)加载到jQuery对话框中,将页面作为纯HTML加载到主页。把这看作是将aspx页面附加到主页上。
  • 在iframe中加载aspx页面类似于在web浏览器中直接导航到该页面。
  • 添加对话框的ViewState在文章中是不准确的,因为主页现在已经添加了许多以前不存在的控件。
  • ViewState包含在第二种情况下在对话框中加载的页面的iframe中,因为它实际上是一个单独的页面。https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe

如果你和我一样是一个ASP.NET n00b,我希望有人能找到有用的东西,不要像我那样花几周时间研究这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51898535

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档