ajax实现DropDownList的更新,但是点击 按钮控件时出错,为什么?

xxdd 发布于 2013/05/17 17:41
阅读 299
收藏 0

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

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

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

源错误:

执行当前 Web 请求期间生成了未经处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。

两个下拉列表框DropDownList是通过ajax读的数据库,实现整个页面无刷新,但是点击按钮的时候就报错,按钮后面.cs中也没有代码,错误如上面所述。求原因。aspx的,.net4.0。


加载中
0
卖切糕大叔
卖切糕大叔
我不是很懂asp。net,但是以我在其他框架中的经验,你的错误是由于你用框架创建了一个表单并启用了验证,验证机制是对比返回内容和创建内容一致( 数据有效并且是预期的);但是你用ajax更新了select,表单返回的select 的value在原来的表单中不存在,所以框架认为你返回了一个不属于表单的元素。
表单不能提交用ajax获得的select value,你可以创建不输入一个不属于表单的select,然后把select的value以input hidden的形式返回server
0
pfdoschina
pfdoschina

楼上说的对,asp.net的视图状态引起的。

既然用Ajax更新,干嘛还要用服务器控件?

xxdd
xxdd
ajax和服务器控件有什么关系?不能公用吗?谢谢。
返回顶部
顶部