DropDown列表在更改时不会触发更改事件

时间:2013-07-04 08:30:26

标签: c# asp.net webforms

我有一个带有下拉列表的页面,上面有一个按钮。下拉列表中的初始选择是空字符串。我不希望这个提交到服务器,所以我禁用了按钮。然后,如果在下拉列表中进行了任何其他选择,我想启用该按钮。但是,当我在下拉列表中进行更改时,我的ddlBusinessUnit_SelectedIndexChanged方法永远不会被命中。

HTML:

<asp:DropDownList ID="ddlBusinessUnit" EnableViewState="true" runat="server" 
            OnSelectedIndexChanged="ddlBusinessUnit_SelectedIndexChanged" />&nbsp;

背后的代码

protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)            
        {
            dsDate.Date = DateTime.Today;
            PopulateBusinessUnits();
            StatusMessages.Visible = false;
        }


       bGetFiles.Enabled = false;
    }

 public void ddlBusinessUnit_SelectedIndexChanged(object sender, EventArgs e)
    {
        if (ddlBusinessUnit.SelectedItem.Text != "")
            bGetFiles.Enabled = true;

    }

2 个答案:

答案 0 :(得分:4)

为您的下拉列表设置AutoPostBack="true"

<asp:DropDownList ID="ddlBusinessUnit" EnableViewState="true" runat="server" AutoPostBack="true" 
 OnSelectedIndexChanged="ddlBusinessUnit_SelectedIndexChanged" />

答案 1 :(得分:4)

你的asp下拉控件上缺少AutoPostBack="true"