网站地图    收藏   

主页 > 前端 > css教程 >

回发或回调参数无效 - html/css语言栏目:html.css

来源:自学PHP网    时间:2015-04-14 14:51 作者: 阅读:

[导读] 写代码时出现一个很常见的问题,回发或回调参数无效 前台代码如下 学号请输入1或2;姓名请输入小红或小蓝...

写代码时出现一个很常见的问题,回发或回调参数无效.

\

前台代码如下

 
<asp:Label ID="Label1" runat="server" Text="Label">学号请输入1或2;姓名请输入小红或小蓝
查询

前台界面如下:

\

代码很简单,不复杂,但是就是不停的报错.如果把EnableEventValidation设置为"false",不报错,但是linkbutton不管用了.后来发现查询还是管用的,前提是没有点击单选框,直接输入文本,点击查询是可以查询出数据的.但是如果学号,姓名单选框,点击任意一个之后,查询就不管用了.

网上说出现这个问题,无非是这几个方面.

一 是 Form嵌套,一个页面只能有一个Form,仔细检查代码就可以解决。
二 是 在下拉菜单中使用ajax,常见于省市联动菜单,可能是由于在aspx页面赋给了下拉菜单初始Item值,在事件回发时提示该错误,将下拉菜单初始Item值删除,在绑定事件中添加Item项。
三 是 if (!Page.IsPostBack)
四 是 DropDownList 控件的ListItem 的Value 属性包含汉字.只要将Value 改为英文或数字的就行了。

但是以上这几个要么我不符合,要么改了也没效果.而且使用了ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证还是没用.

最后把代码在新建的一个页面中发现能够执行,前台是重新拖控件整的,后台基本完全复制粘贴过去的.所以问题出现在前台.最后发现

 
 
 

单选框的GroupName和Table的ID是同样的,都是tbTest,修改源代码中的GroupName为tbTest1,代码正确执行.而且EnableEventValidation也不用设置为false就可以正常执行.

解决完问题,发现问题非常非常简单,但是它却花费了我N久N久的时间.我想我以后再也不会给GroupName起名起的和ID重复的,纯粹是我太懒了,起个名懒得想.而且我的窗体名和解决方案是一样的,这个尽管没有什么影响,但是以后还是注意点吧.

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论