0

我想根据另一个 DropDownList 的选定索引更改 DropDownList,这样如果我更改第一个下拉列表中的值,第二个下拉列表也应该更改。

我正在使用 SelectedIndexChanged 事件,但现在,如果我更改第一个下拉列表,则第二个下拉列表不会改变。

我在 SelectedIndexChange 事件上设置了一个断点,但是在运行代码并更改 DropDownList 的索引后,调试器从未在断点处停止。只有在重新加载或单击按钮后,调试器才会跳转到函数中。我如何在 asp.net 中做到这一点:(

这是第一个下拉列表的 EventHandler:

protected void drpCompanyLocation_SelectedIndexChanged(object sender, EventArgs e)
        {
            drpCompanyDepartment.DataSource = (object)ActiveDirectoryManager.GetDepartmentsByLocation(domaincontroller, drpCompanyLocation.SelectedValue); 
            drpCompanyDepartment.DataBind();
        }
4

3 回答 3

1

我认为您没有AutoPostBack=true添加到DropDownList您的 aspx 文件中。如果您添加此属性,更改所选索引将自动触发您的事件。有关详细信息,请参阅:http ://asp-net-example.blogspot.nl/2009/03/how-to-use-dropdownlist-autopostback.html

于 2013-04-17T07:30:35.103 回答
1

确保 Autopostback 设置为 true(在下拉属性中)并将 OnSelectedIndexChanged 属性设置为指向函数,您可以在其中使用 drpCompanyLocation.SelectedValue 访问第一个下拉值。

如果这不起作用,您必须在此处显示您的代码。

于 2013-04-17T08:11:44.593 回答
0

如果您不想要回帖,也可以使用级联下拉菜单

http://www.asp.net/ajaxLibrary/AjaxControlToolkitSampleSite/CascadingDropDown/CascadingDropDown.aspx

于 2013-04-24T06:34:26.350 回答