我有两个下拉列表(ddl1
和ddl2
)和一个按钮。我从触发ddl1_selectedIndexChanged
事件的ddl1
中选择一个值。当发生这种情况时,ddl1
选择的值将进入SELECT语句中的数据库,在SELECT语句中,WHERE子句用于提取所需数据的行。这个新的数据表现在填充了ddl2
。从dd12
中选择一个值后,我按下一个按钮。当按钮被按下时,我想在button_click
事件中使用ddl2_selected_value
。问题是,当我按下按钮时,ddl1_selectedIndexChanged
事件意外触发,并再次绑定ddl2
,丢失了ddl2_selectedValue
。
ddl1 - EnableViewState True, PostBack = True
ddl2 - EnableViewState True, PostBack = False
发布于 2012-12-07 03:28:35
您是否有任何关于页面加载的填充ddl1的内容。
在这种情况下,您需要在页面加载中检查PostBack。
if(!Page.IsPostBack)
{
//Call method to populate ddl1.
//ddl1 will load only once.
}
发布于 2012-12-08 01:46:31
我通过网络上的几个博客解决了这个问题。我所做的就是在asp Panel中编写这些完整的控件集。此面板的viewState属性已设置为False。一旦我将其更改为true,不想要的selectedindexchanged事件就会被抑制。
这让我挺过来了。:)
但是,这是一种预感。我还不知道为什么会发生这种情况?
非常欢迎您的解释。
@Arun:感谢您的关心。
https://stackoverflow.com/questions/13750007
复制相似问题