ASP.NET UpdatePanel错误htmlfile:未知的运行时错误,updatePanelElement.innerHTML =呈现

时间:2009-01-13 22:11:59

标签: asp.net ajax updatepanel

在触发UpdatePanel后调试ASP.NET Web应用程序时出现此错误:

ASP.NET htmlfile: Unknown runtime error updatePanelElement.innerHTML=rendering

htmlfile:未知的运行时错误

和“updatePanelElement.innerHTML = rendering”在ScriptResource.axd文件中突出显示。

6 个答案:

答案 0 :(得分:4)

我遇到了同样的问题。在我的情况下,页面(表)设计不正确。以下是我的方案中的问题详细信息:

    <table>
<tr>
<td>
    <asp:Label id="Lb1" runat="server"/>
</td>
</tr>
<asp:UpdatePanel id="UP1" runat="server">
<ContentTemplate>
       <!-- controls in Update Panel-->
</ContentTemplate>
</asp:UpdatePanel>
<tr>
<td>
    <asp:Button id="btn" OnClick="btn_Click" runat="server"/>
</td>
</tr>
</table>

我已改为

<table>
<tr>
<td>
    <asp:Label id="Lb1" runat="server"/>
</td>
</tr>
**<tr>
<td>**
<asp:UpdatePanel id="UP1" runat="server">
<ContentTemplate>
       <!-- controls in Update Panel-->
</ContentTemplate>
</asp:UpdatePanel>
**</td>
</tr>**
<tr>
<td>
    <asp:Button id="btn" OnClick="btn_Click" runat="server"/>
</td>
</tr>
</table>

问题已解决,将“更新”面板移动到另一个表行。 所以我坚信正确的屏幕设计应该解决这类问题。

答案 1 :(得分:2)

感谢上面的解释 - 我找到了一个解决方案,将UpdatePanel包含在需要由事件更新的li中。希望有所帮助。

e.g。

<li>
<asp:UpdatePanel runat="server" ID="UpdatePanelCustInfo" UpdateMode="Conditional" RenderMode="Inline">
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="ddlCountry" />
    </Triggers>
    <ContentTemplate>
        <label>State:</label>
        <asp:DropDownList ID="ddlStateProvince" AutoPostBack="False" runat="server" CssClass="adminInput">
        </asp:DropDownList>
    </ContentTemplate>
</asp:UpdatePanel>
</li>

答案 2 :(得分:2)

错误地将更新面板放在标签之间而不是嵌套标签时出现相同的错误。这个修复做到了,所以我从中得到了它:

<table>
<tr>
<asp:UpdatePanel runat="Server">
<ContentTemplate>
<td>

    //code here

</td>
</ContentTemplate>
</asp:UpdatePanel>
</td>
</table>

到:

<table>
<tr>
<td>
<asp:UpdatePanel runat="Server">
<ContentTemplate>

    //code here


</ContentTemplate>
</asp:UpdatePanel>
</td>

答案 3 :(得分:1)

我得到了同样的错误,但已经解决了。

我在UpdatePanel中嵌套html表单。只需删除Form标签即可解决问题。

答案 4 :(得分:0)

这似乎发生了,因为我在一个有序列表中得到了我的UpdatePanel&lt; ol&gt;容器。我有列表项&lt; li&gt;我的UpdatePanel的ContentTemplate中的标签。

<ol>
    <li>...</li>
    <asp:UpdatePanel ...>
        <ContentTemplate>
            <li id="lione" runat="server">...</li>
            <li id="litwo" runat="server">...</li>
        </ContentTemplate>
        <Triggers>
            ...
        </Triggers>
    </asp:UpdatePanel>
    <li>...</li>
</ol>

这对我来说很有意义,但我想我需要重新考虑我的页面布局。

答案 5 :(得分:0)

说这让我发疯是一种轻描淡写的说法。我收到了与OP描述的相同的错误,并使用我的HTML试图找出为什么我无法写入p标签内的div。最后,我复制了我的页面HTML,只是为了解决我页面上安排的HTML,并发现它与我正在摆弄的特定UpdatePanel无关。我在我的页面底部的身体内容中有javascript脚本标签,我不知道为什么,但IE8讨厌这种安排。我能够删除我的身体内容中的所有脚本,并将其放在我页面的头标签中,这个问题就消失了。 HTH