asp.net Page.EnableEventValidation 属性验证服务器控件的回发和回调事件出现的错误
更新时间:2010年10月19日 02:23:01 作者:
Page.EnableEventValidation 属性验证服务器控件的回发和回调事件出现的错误前两天用jQuery做了一个包含DropDownList联动的页面,数据通过Ajax请求得到的。
本以为页面很简单不会出现问题,但运行时出现了如下错误:

Page.EnableEventValidation 属性 参看了一下MSDN,获取或设置一个值,该值指示页面验证回发事件,还是验证回调事件。.NET Framework出于安全考虑需要为服务器端控件的回发和回调事件进行注册,此事件验证机制可消除未经授权的回发请求和回调带来的风险。通过此模型,控件可在呈现期间注册其事件,然后在回发或回调期间验证这些事件。默认情况下,ASP.NET 中的所有事件驱动控件均使用此功能。
第一反应,既然启用了事件验证,那就在页面中禁用验证,将<%@ Page EnableEventValidation="false" %>,问题解决。但是为什么会出现这种问题呢,google一下。
如果页面含有 DropDownList 或 ListBox这样的控件,可能以下原因造成:
在下拉菜单中使用ajax,常见于省市联动菜单,可能是由于在aspx页面赋给了下拉菜单初始Item值,在事件回发时提示该错误,将下拉菜单初始Item值删除,在绑定事件中添加Item项。
原因是 DropDownList 控件的ListItem 的Value 属性 包含汉字.只要将Value 改为英文或数字的就行了.最好在web.config中添加如下语句:
<globalization requestEncoding="utf-8" responseEncoding="utf-8" culture="zh-CN" uiCulture="zh-CN"/>
因为 POSTBACK 如果不采用 UTF-8 编码, JAVASCRIPT 会认为有问题。 只改 requestEncoding="utf-8" 就可以。如有其他建议,请指出。

Page.EnableEventValidation 属性 参看了一下MSDN,获取或设置一个值,该值指示页面验证回发事件,还是验证回调事件。.NET Framework出于安全考虑需要为服务器端控件的回发和回调事件进行注册,此事件验证机制可消除未经授权的回发请求和回调带来的风险。通过此模型,控件可在呈现期间注册其事件,然后在回发或回调期间验证这些事件。默认情况下,ASP.NET 中的所有事件驱动控件均使用此功能。
第一反应,既然启用了事件验证,那就在页面中禁用验证,将<%@ Page EnableEventValidation="false" %>,问题解决。但是为什么会出现这种问题呢,google一下。
如果页面含有 DropDownList 或 ListBox这样的控件,可能以下原因造成:
在下拉菜单中使用ajax,常见于省市联动菜单,可能是由于在aspx页面赋给了下拉菜单初始Item值,在事件回发时提示该错误,将下拉菜单初始Item值删除,在绑定事件中添加Item项。
原因是 DropDownList 控件的ListItem 的Value 属性 包含汉字.只要将Value 改为英文或数字的就行了.最好在web.config中添加如下语句:
复制代码 代码如下:
<globalization requestEncoding="utf-8" responseEncoding="utf-8" culture="zh-CN" uiCulture="zh-CN"/>
因为 POSTBACK 如果不采用 UTF-8 编码, JAVASCRIPT 会认为有问题。 只改 requestEncoding="utf-8" 就可以。如有其他建议,请指出。
您可能感兴趣的文章:
- ASP.NET自定义Web服务器控件之Button控件
- ASP.NET服务器端控件RadioButtonList,DropDownList,CheckBoxList的取值、赋值用法
- jquery获取ASP.NET服务器端控件dropdownlist和radiobuttonlist生成客户端HTML标签后的value和text值
- asp.net 服务器控件的 ID,ClientID,UniqueID 的区别
- asp.net下使用Request.From获取非服务器控件的值的方法
- jQuery生成asp.net服务器控件的代码
- ASP.NET 动态写入服务器端控件
- asp.net Page.Controls对象(找到所有服务器控件)
- Asp.Net使用服务器控件Image/ImageButton显示本地图片的方法
相关文章
在vs2008中使用AJAX开发.net 2.0下的Web程序的方法
最近做项目需要用到AJAX,但是工作需要必须使用.net 2.0版本;但发现如果项目为.net2.0版本则没有Ajax(web.config已经配置上ajax) ,、工具栏中并不出现Ajax选项卡. 而且新建页面也没有AJAX页面;后来查了很多资料 发现了一种解决方法2011-06-06
ASP.Net WebAPI与Ajax进行跨域数据交互时Cookies数据的传递
本文主要介绍了ASP.Net WebAPI与Ajax进行跨域数据交互时Cookies数据传递的相关知识。具有很好的参考价值。下面跟着小编一起来看下吧2017-05-05
asp.net LC.exe已退出代码为 -1的原因分析及解决方法
错误“LC.exe”已退出,代码为 -1。是VS2005,并且在项目中引用了第三方组件。2013-06-06
javascript判断是否有对RadioButtonList选项选择
写个Javascript来判断是否有对RadioButtonList选项选择,附动画演示,感兴趣的朋友可以了解下,希望对您们有帮助2013-01-01
解决在Web.config或App.config中添加自定义配置的方法详解
本篇文章是对在Web.config或App.config中添加自定义配置的方法进行了详细的分析介绍,需要的朋友参考下2013-05-05


最新评论