我有两个下拉列表(ddl1
和ddl2
)和一个按钮。
我从ddl1
中选择了一个触发ddl1_selectedIndexChanged
事件的值。
发生这种情况时,ddl1
选择的值将转到SELECT语句中的数据库,其中WHERE子句用于获取所需数据的行。
此新数据表现在填充ddl2
。
从dd12
中选择一个值后,
我按一下按钮。
按下按钮后,我想使用ddl2_selected_value
事件中的button_click
。
问题是当我按下按钮时,ddl1_selectedIndexChanged
事件意外触发并再次绑定ddl2
,失去ddl2_selectedValue
。
ddl1 - EnableViewState True, PostBack = True
ddl2 - EnableViewState True, PostBack = False
答案 0 :(得分:1)
您是否在填充ddl1的页面加载中有任何内容。
在这种情况下,您需要在页面加载中检查PostBack。
if(!Page.IsPostBack)
{
//Call method to populate ddl1.
//ddl1 will load only once.
}
答案 1 :(得分:0)
我通过网上的几个博客解决了这个问题。 我在做的是我在asp Panel中编写了这整套控件。 此面板的viewState属性设置为False。 一旦我将其更改为true,就会抑制不需要的selectedindexchanged事件。
这让我了解了。 :)
但是,这是一种预感。 我还没知道为什么会这样?
非常欢迎解释。
@Arun:感谢关注。