DropDownList控件不触发SelectedIndexChanged事件(转)

相信DropDownList 控件不能触发SelectedIndexChanged 原因以下几种:

1、DropDownList 控件的属性 AutoPostBack="True" 没有写;

2、DropDownList 控件的数据绑定没有放在if (!Page.IsPostBack) 里面;

3、DropDownList 控件选定项的value 值只有在发生变化时,才将信息发往服务器;

 

如果以上问题都排除以后,DropDownList 控件仍然不能触发SelectedIndexChanged 事件的话,可能原因是:

在火狐(Firefox)中,DropDownList 控件能够触发SelectedIndexChanged 事件;

而在 IE 8中,不好意思,DropDownList 控件对选择项后毫无反应,就连Page_Load 事件都根本没有进去!

所以,错误根本不在DropDownList 控件本身的原因上。

 

折腾了快2个小时后,得出结论:

由于本人的程序使用了<frameset> 框架,并且DropDownList 控件所在的页面是使用 window.showModalDialog() 弹出的模态对话框,

所以,submit 默认会提交到新的页面窗口。

 

解决办法也很简单,只要在该页面窗口中的<head> 中添加如下代码:

<base target=_self></base>

即可!

 

其实,原因的根本是:

在使用 showModalDialog 的模态窗体中,必须加上<base target=_self></base> 才可以提交,否则就会弹出新的窗口了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值