在包含内置任何控件的更新面板的页面上按两次ESC键时,说明文本框或列表框我得到 System.ArgumentException:无效的回发或回调参数。我已经检查了剩余的浏览器是否正常工作,但在 Internet Explorer 8 中创建了上述问题。
我发现的可能解决方案是在页面级别或webconfig上执行 EnableEventValidation =“false”,或者禁用转义键。我不想使用2个以前的解决方案,因为我的网站安全性会妥协,我不希望我的转义键禁用。
任何建议/意见表示赞赏。
代码:
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePartialRendering="true"
EnablePageMethods="true">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanelHeader" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div id="Search">
<table style="empty-cells: hide;" width="100%" cellpadding="0" cellspacing="0" class="controlsTable">
<tr>
<td class="td4Caption">
Some Text
</td>
<td class="tdpadding">
<asp:TextBox ID="txtbox" ClientIDMode="Static" runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td>
<asp:ImageButton SkinID="Export" AlternateText="Generate Report" ToolTip="Generate Report"
ID="ibtnGenerateReport" ValidationGroup="Generate" runat="server" OnClick="ibtnGenerateReport_Click" />
</td>
</tr>
</table>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</form>
</body>
</html>
答案 0 :(得分:1)
•您可以尝试的另一件事是:EnablePartialRendering =“false”到asp:ScriptManager
使用“edge”确保您的网站使用适当的兼容性进行渲染: &LT; meta http-equiv =“X-UA-Compatible”content =“edge”/&gt;
如果上述情况无效,请尝试控制异常处理程序,如下所示:
http://encosia.com/how-to-improve-aspnet-ajax-error-handling/