积极答复者
回发或回调参数无效。在配置中使用 <pages enableEventValidation="true"/> 或在页面中使用 <%@ Page EnableEventValidation="true" %> 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。

问题
-
回发或回调参数无效。在配置中使用 <pages enableEventValidation="true"/> 或在页面中使用 <%@ Page EnableEventValidation="true" %> 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.ArgumentException: 回发或回调参数无效。在配置中使用 <pages enableEventValidation="true"/> 或在页面中使用 <%@ Page EnableEventValidation="true" %> 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。
源错误:
执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。
堆栈跟踪:
[ArgumentException: 回发或回调参数无效。在配置中使用 <pages enableEventValidation="true"/> 或在页面中使用 <%@ Page EnableEventValidation="true" %> 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。] System.Web.UI.ClientScriptManager.ValidateEvent(String uniqueId, String argument) +8621129 System.Web.UI.Control.ValidateEvent(String uniqueID, String eventArgument) +72 System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +35 System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +36 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1565
- 已编辑 Sheng Jiang 蒋晟Moderator 2010年5月18日 3:15 标题含糊
- 已移动 Sheng Jiang 蒋晟Moderator 2010年5月18日 3:16 (发件人:Visual C#)
答案
-
检查下你的页面
1、在页面的<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> 中添加 EnableEventValidation="false" 就可以了。(首先考虑的)
2、是Form嵌套,一个页面只能有一个Form,仔细检查代码就可以解决。参照
http://www.cnblogs.com/dongyongjing/archive/2007/03/07/666427.html
努力+方法=成功- 已标记为答案 KeFang Chen 2010年5月19日 2:26
-
提示已经很明确了::
回发或回调参数无效。在配置中使用 <pages enableEventValidation="true"/> 或在页面中使用 <%@ Page EnableEventValidation="true" %> 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。
处理方法:
1。enableEventValidation设成false
2.通常是你的脚本代码修改了 __doPostback 里边的第二个参数。 这是为了防止一些阴险的客户端病毒程序通过这个参数控制服务器进行本页原本没有涉及的操作。 如果你确实需要在客户端修改这个参数,应该首先对这个参数可能值使用 ClientScriptManager.RegisterForEventValidation 在服务器端注册。
family as water- 已标记为答案 KeFang Chen 2010年5月19日 2:26
全部回复
-
检查下你的页面
1、在页面的<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> 中添加 EnableEventValidation="false" 就可以了。(首先考虑的)
2、是Form嵌套,一个页面只能有一个Form,仔细检查代码就可以解决。参照
http://www.cnblogs.com/dongyongjing/archive/2007/03/07/666427.html
努力+方法=成功- 已标记为答案 KeFang Chen 2010年5月19日 2:26
-
提示已经很明确了::
回发或回调参数无效。在配置中使用 <pages enableEventValidation="true"/> 或在页面中使用 <%@ Page EnableEventValidation="true" %> 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。
处理方法:
1。enableEventValidation设成false
2.通常是你的脚本代码修改了 __doPostback 里边的第二个参数。 这是为了防止一些阴险的客户端病毒程序通过这个参数控制服务器进行本页原本没有涉及的操作。 如果你确实需要在客户端修改这个参数,应该首先对这个参数可能值使用 ClientScriptManager.RegisterForEventValidation 在服务器端注册。
family as water- 已标记为答案 KeFang Chen 2010年5月19日 2:26