DropDownList索引更改时删除TextBox文本值

时间:2014-10-14 15:20:47

标签: asp.net .net-3.5 web-parts asp.net-3.5

我有一个很长的Web部件,但是对于这个例子,我们只使用DropDownList(DDL)和TextBox(TB)。我希望在DDL索引发生变化时删除TB的值。

Ascx内容

<asp:DropDownList ID="ddlStep0" runat="server" CssClass="form-control" OnSelectedIndexChanged="DdlStep0SelectedIndexChanged" AutoPostBack="True" />

<asp:TextBox ID="txtStep0" runat="server" CssClass="form-control" />

代码

protected void Page_Load(object sender, EventArgs e)
{
    if (!this.IsPostBack)
    {
        this.PopulateDDLStep0(); // populates the DDL with ListItems, I believe it does not matter how
    }
}

protected void DdlStep0SelectedIndexChanged(object sender, EventArgs e)
{
    this.txtStep0.Text = string.Empty;
}

我希望上面的代码按预期工作。但是,更改DDL选择时不会删除文本值。它根本不会改变。

修改 回发是必要的,因为有一些更改与索引更改有关,例如还有4个DDL及其价值变化。

2 个答案:

答案 0 :(得分:2)

使用UpdatePanel刷新用户控件

答案 1 :(得分:1)

我认为你应该删除AutoPostBack="True"并使用

if (!isPostback) {this.txtStep0.Text = string.Empty;}