我创建了一个包含两个列表框和一些按钮的项目交换器控件,这些按钮允许我在两个列表之间交换项目。交换是使用javascript完成的。我还在列表中上下移动项目。基本上,当我将项目移动到右侧的列表框时,我将元素(GUID)的数据键存储在隐藏字段中。在回发时,我只是从现场读取 GUID。一切正常,但在回发时,我得到以下异常:
无效的回发或回调参数。使用配置或页面中的 <%@ Page EnableEventValidation="true" %> 启用事件验证。出于安全目的,此功能验证回发或回调事件的参数是否源自最初呈现它们的服务器控件。如果数据有效且符合预期,请使用 ClientScriptManager.RegisterForEventValidation 方法注册回发或回调数据以进行验证。
我准备了一个测试应用程序。您所要做的就是下载存档并运行项目。在网页上选择 3 个项目,按全部添加,然后将第三个元素上移一级,然后点击“按钮”。错误会出现。关闭事件验证是绝对不能接受的。任何人都可以帮助我,我已经花了两天时间没有找到解决方案。