asp.net C 使用JavaScript重新排列的ListBox元素导致回发时出现事件验证错误
javascript完成的.我还在列表中上下移动项目.基本上,当我将项目移动到右侧的列表框时,我
我创建了一个项目交换器控件,包含两个列表框和一些按钮,允许我在两个列表之间交换项目.交换是使用 javascript完成的.我还在列表中上下移动项目.基本上,当我将项目移动到右侧的列表框时,我将元素(GUID)的数据键存储在隐藏字段中.在回发时,我只是从字段中读取GUID.一切都很好,但在回发后,我得到以下异常: Invalid postback or callback argument. Event validation is enabled using in configuration or <%@ Page EnableEventValidation=”true” %> in a page. For security purposes,this feature verifies that arguments to postback or callback events originate from the server control that originally rendered them. If the data is valid and expected,use the ClientScriptManager.RegisterForEventValidation method in order to register the postback or callback data for validation. 我准备了一个测试应用程序.您所要做的就是下载存档并运行项目.在网页上选择3项,按全部添加,然后将第三个元素向上移动一级,然后点击“按钮”.错误将显示出来.关闭事件验证绝不是可以接受的.任何人都可以帮助我,我已经花了两天没有找到解决方案. TEST APPLICATION 解决方法 问题是列表的已保存视图状态和回发时收到的数据不匹配.事件验证问题很可能只是由于这种方法可能出现的问题之一. webforms的体系结构不允许这种用途,并且很可能,即使您成功避免了事件验证问题,这种方法也会遇到更多问题.你有几种选择:1)最简单的是在服务器上进行交换逻辑而不是使用javascript.这样,视图状态将在回发之间保留,并且多次往返服务器的额外开销可能不是问题. 2)如果多次往返服务器是一个问题,请编写一个服务器控件来处理它自己的视图状态.这当然是一种非常吸引人的方法. 3)中间地面方法可以是使用两个简单的html列表(只需编写html标签而不使用asp.net控件),并在客户端维护javascript中隐藏字段中的id列表.在post back上只需解析隐藏字段并提取id忽略html列表. 如果没有针对它的严重论据,我会选择1. (编辑:岳阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 如何合理地构建我的ASP.NET MVC 2项目与区域
- asp.net-mvc – asp.net MVC应该是View-Model封装域模型吗?
- 自定义每个用户的会话超时 – ASP.NET
- jQuery validate 根据 asp.net MVC的验证提取简单快捷的验证
- MVC SessionStateAttribute不作为全局属性
- asp.net – 让Visual Studios使用子域名?
- 如何设置特定于ASP.NET请求的log4net上下文属性?
- asp.net-mvc-3 – 使用自定义VirtualPathProvider加载嵌入式
- asp.net-mvc – 是否可以为post和get提供重复的动作名称和参
- asp.net-mvc – MVC4区域和表单认证
- 用Dataset对象读取XML内容来绑定下拉列表框
- asp.net-mvc – MVC3验证与实体框架模型/数据库首
- asp.net-mvc-3 – CopyAllFilesToSingleFolderFo
- ASP.NET MVC4安全性,身份验证和授权
- asp.net-mvc – ASP.NET MVC如何在生产中禁用调试
- asp.net-mvc – Nhibernate / MVC:在View中处理
- asp.net – 部分视图呈现按钮点击
- asp.net – App Settings和connectionStrings配置
- asp.net-mvc – SelectListItem中的Selected属性
- 你如何获得asp.net控件的自动生成的name属性?
- asp.net C MVC4 C ContextDependentView C
- asp.net-mvc-3 C 如何从ASP.NET MVC#输出中
- asp.net-mvc C 已经使用相同的参数类型定义
- asp.net-core C 如何使用ASP.NET注册OData
- asp.net-mvc C 使用AD的ASP.NET MVC表单Aut
- ASP.Net C AJAX UpdatePanel中的Javascript
- asp.net C 适用于多个用户的EWS通知中心
- asp.net-mvc-4 C 在EF迁移配置类的Seed方法
- asp.net-mvc C ASP.NET MVC中的WebApi [Fro
- asp.net-mvc C 未在ELMAH中记录的错误