【www.gdgbn.com--php安全】

c# 回发或回调参数无效解决方法

突然出现了错误:“回发或回调参数无效。在配置中使用 或在页面中使用 <%@ page enableeventvalidation="true" %>启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 clientscriptmanager.registerforeventvalidation 方法来注册回发或回调数据以进行验证。


解决办法:

如果页面上有用上数据绑定控件,则将数据绑定放在
if(!ispostback)
{
 datainit();
}


如果没有的话,可以将页面上enableeventvalidation属性设置为false就可以了
<%@ page language="c#" autoeventwireup="true" codebehind="localuser.asp教程x.cs" inherits="sklgp.workstation.web.page.mainframe.manage.localuser" enableeventvalidation="false"%>


其它出现"回发或回调参数无效"错误的解决方法


错误描述:  回发或回调参数无效。在配置中使用      或在页面中使用   <%@   page   enableeventvalidation="true"   %>   启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用   clientscriptmanager.registerforeventvalidation   方法来注册回发或回调数据以进行验证。    

  说明:   执行当前   web   请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。   


错误原因:

1是form嵌套,一个页面只能有一个form,仔细检查代码就可以解决。


2是在下拉菜单中使用网页特效 来更改内容(如ajax)

解决方法:

对于第一种原因引起的错误,只要保证页面只有一个form就行了。

对于第二种原因引起的错误,需要将dropdownlist控件改为html select控件


在实现级联菜单的时候,突然出现一下错误 其它解决方法

解决方法:

在做级联菜单的时候可以将dropdownlist控件替换成select,如:

ui-->

c#-->

string cityname = this.ddcity.selecteditemvalue;

替换为:

ui-->

c#—>

string cityname = request[this.ddlcity.uniqueid]

4.是 dropdownlist 控件的listitem 的value 属性 包含汉字.只要将value 改为英文或数字的就行了。

 

本文来源:http://www.gdgbn.com/jiaocheng/29870/