我在 ASP.Net AJAX 更新面板中有两个下拉列表。当用户从第一个下拉列表中选择一个值时,一个下拉列表通过回发填充第二个,这一切都很好。但是,我遇到的问题是我无法从第二个下拉列表中获取 selectedvalue,我的意思是它总是选择第一项而不是实际选择的值。
我已经研究过在页面加载时将填充第二个下拉列表移动到 If Not IsPostBack Then ,但是当 AJAX 更新面板执行部分回发时,这会停止填充该下拉列表。
那么,有远离这个吗?
谢谢
我在 ASP.Net AJAX 更新面板中有两个下拉列表。当用户从第一个下拉列表中选择一个值时,一个下拉列表通过回发填充第二个,这一切都很好。但是,我遇到的问题是我无法从第二个下拉列表中获取 selectedvalue,我的意思是它总是选择第一项而不是实际选择的值。
我已经研究过在页面加载时将填充第二个下拉列表移动到 If Not IsPostBack Then ,但是当 AJAX 更新面板执行部分回发时,这会停止填充该下拉列表。
那么,有远离这个吗?
谢谢
如果要根据第一个下拉列表中选择的值更改第二个下拉列表的值,则应使用第一个下拉列表的 SelectedIndexChanged 事件来设置该值。
您的代码(来自评论):
在 Page_Load 我有以下
If (IsPostBack)
{
ddlSite.Datasource = GetSites();
ddlSite.Databind();
ddlPlant.DataSource() = GetPlant(ddlSite.SelectedValue);
ddlPlant.Databind();
}
在页面加载时 ddlSite.SelectedValue 始终为零。
您需要在 ddlSite_SelectedIndexChanged 事件中绑定第二个下拉菜单。
这是一个示例,如果它可以帮助您..它与数据源的级联下拉列表。 http://www.aspdotnet-suresh.com/2011/01/introduction-here-i-will-explain-how-to.html