ASP.Net UpdatePanel ImageButton 导致 "this._postbackSettings.async is null or not an object"

标签 asp.net asp.net-ajax updatepanel

我在 dropPanelExtender 内的 popupControlExtender 内的更新面板上收到此错误。

我看到很多其他人也遇到这个问题,并进行了各种修复,但没有一个对我有用。

我很想听到一个合乎逻辑的解释,解释为什么会发生这种情况,以及避免将来出现此类问题的万无一失的方法。

我发现像其他人一样,当触发器是 LinkBut​​ton 而不是 ImageButton 时,不会发生此错误,仍然想知道是否有人有解释。

最佳答案

我遇到了同样的问题,并且没有真正找到任何令人满意的解决方案,直到我最终得到 https://siderite.dev/blog/thispostbacksettingsasync-is-null-or.html这正是我想要的。

为了避免将来可能出现死链接的问题,这里是代码:

var script = @"
if (Sys &&
    Sys.WebForms && Sys.WebForms.PageRequestManager &&
    Sys.WebForms.PageRequestManager.getInstance) 
{
    var prm = Sys.WebForms.PageRequestManager.getInstance();
    if (prm &&
       !prm._postBackSettings)
    {
        prm._postBackSettings = prm._createPostBackSettings(false, null, null);
    }";

ScriptManager.RegisterOnSubmitStatement(
    Page, 
    Page.GetType(), 
    "FixPopupFormSubmit", 
    script);

如果提交时未设置 _postBackSettings,则会创建它们,从而导致空引用异常消失,因为 _postBackSettings.async 可用。

希望这有帮助,

G.

关于ASP.Net UpdatePanel ImageButton 导致 "this._postbackSettings.async is null or not an object",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57586/

相关文章:

asp.net - 集合已修改;枚举操作可能无法执行。但为什么?

c# - 部署 ASP.NET Web 应用程序

asp.net-mvc - PagedList.MVC 中的 Ajax 分页使用部分页面

jquery - 添加 jquery 文件后更新面板不工作

javascript - 隐藏面板内的 ASP.NET updatepanel 可能存在错误

c# - 在 asp.net 中将 JSON 转换为 .Net 对象时出错

c# - 在 web Api 和 angularJS 中上传文件和表单数据

css - 更新面板 Controller 显示问题

客户端上的 ASP.NET AJAX 和日期时间格式

c# - 如何阻止 UpdatePanel 导致整个页面回发?