【问题标题】:Ajax Update Panel Random Error 'PRM_MissingPanel'Ajax 更新面板随机错误“PRM_MissingPanel”
【发布时间】:2015-06-11 14:16:21
【问题描述】:

我使用 Visual Studio 中的 Ajax 更新面板来处理我在网站上的搜索功能的回发。 (IE 搜索成员)将生成一个带有结果的 gridview。每次我从 TFS 获取最新版本时,都会抛出此错误:

http://localhost:58921/bundles/MsAjaxJs 中第 1 行第 132567 列的未处理异常? JavaScript 运行时错误:无法获取未定义或空引用的属性“PRM_MissingPanel”

它坏了之后,我可以再次调试,直到我得到一个更新的版本才会坏。

我用谷歌搜索了很多,但找不到 PRM_MissingPanel 是什么。

关于为什么会发生这种情况的任何想法?

MsAjaxBundle 来自我创建 Web App 时生成的 ScriptManager:

    <asp:ScriptManager runat="server">
        <Scripts>
            <asp:ScriptReference Name="MsAjaxBundle" />
            <asp:ScriptReference Name="jquery" />
            <asp:ScriptReference Name="bootstrap" />
            <asp:ScriptReference Name="respond" />
            <asp:ScriptReference Name="WebForms.js" Assembly="System.Web" Path="~/Scripts/WebForms/WebForms.js" />
            <asp:ScriptReference Name="WebUIValidation.js" Assembly="System.Web" Path="~/Scripts/WebForms/WebUIValidation.js" />
            <asp:ScriptReference Name="MenuStandards.js" Assembly="System.Web" Path="~/Scripts/WebForms/MenuStandards.js" />
            <asp:ScriptReference Name="GridView.js" Assembly="System.Web" Path="~/Scripts/WebForms/GridView.js" />
            <asp:ScriptReference Name="DetailsView.js" Assembly="System.Web" Path="~/Scripts/WebForms/DetailsView.js" />
            <asp:ScriptReference Name="TreeView.js" Assembly="System.Web" Path="~/Scripts/WebForms/TreeView.js" />
            <asp:ScriptReference Name="WebParts.js" Assembly="System.Web" Path="~/Scripts/WebForms/WebParts.js" />
            <asp:ScriptReference Name="Focus.js" Assembly="System.Web" Path="~/Scripts/WebForms/Focus.js" />
            <asp:ScriptReference Name="WebFormsBundle" />
        </Scripts>
    </asp:ScriptManager>

【问题讨论】:

  • 而 wot 是 MsAjaxJs ?
  • 当我在 Visual Studio 中创建我的 Web 应用程序时,它就在那里

标签: javascript c# asp.net ajax updatepanel


【解决方案1】:

问题是我隐藏了一个带有更新面板的 div,然后将可见更改为 true,但更新面板实际上并没有显示出来。

我将其更改为以下内容,以便更新面板始终存在,而不是消失和重新出现:

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
    <ContentTemplate>
        <div visible="false" id="Search" runat="server">
            <div style="overflow: hidden;">

【讨论】:

    【解决方案2】:

    这里也有同样的问题:在我的 Login.aspx 页面上,它似乎突然无缘无故地发生了。

    建议的解决方案不适用于我的案例,因为我的面板没有隐藏,除了用于一年未修改的同一页面。

    这是一个非常简单的页面 - 我几乎尝试了一切,没有运气......直到我将 ID="SomeUnrelevantIDhere" 添加到 asp:UpdatePanel,即使我没有在代码隐藏中使用它,即使它一直在工作一年内没有设置明确的 ID...

    所以我的解决方案是在 .ascx 文件的更新面板中添加 ID="something"。

    【讨论】:

      猜你喜欢
      • 2011-06-24
      • 1970-01-01
      • 2010-10-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多