0

我在 ASP.Net AJAX 更新面板中有两个下拉列表。当用户从第一个下拉列表中选择一个值时,一个下拉列表通过回发填充第二个,这一切都很好。但是,我遇到的问题是我无法从第二个下拉列表中获取 selectedvalue,我的意思是它总是选择第一项而不是实际选择的值。

我已经研究过在页面加载时将填充第二个下拉列表移动到 If Not IsPostBack Then ,但是当 AJAX 更新面板执行部分回发时,这会停止填充该下拉列表。

那么,有远离这个吗?

谢谢

4

2 回答 2

0

如果要根据第一个下拉列表中选择的值更改第二个下拉列表的值,则应使用第一个下拉列表的 SelectedIndexChanged 事件来设置该值。

您的代码(来自评论):

在 Page_Load 我有以下

If (IsPostBack)
{ 
    ddlSite.Datasource = GetSites();
    ddlSite.Databind();
    ddlPlant.DataSource() = GetPlant(ddlSite.SelectedValue);
    ddlPlant.Databind();
}

在页面加载时 ddlSite.SelectedValue 始终为零。

您需要在 ddlSite_SelectedIndexChanged 事件中绑定第二个下拉菜单。

页面生命周期问题已回答

于 2012-10-26T23:09:45.027 回答
0

这是一个示例,如果它可以帮助您..它与数据源的级联下拉列表。 http://www.aspdotnet-suresh.com/2011/01/introduction-here-i-will-explain-how-to.html

于 2012-10-27T00:56:39.337 回答