在dropdownlist控件中需要帮助

时间:2009-04-06 14:33:28

标签: drop-down-menu

我对dropdownlist有一个荒谬的问题。通过for循环我已经插入了Day,Month和Year的下拉值。但是当我从下拉列表中选择日,月和年后提交表单时,列表项值将在每次提交后重新编制索引。例如,第1天到第31天,第1个月到第12个月,1970年到2009年。提交表单后每个下拉列表中的列表项变为双倍。在提交之前提交日期下拉列表之前是1到31之后如果我检查下拉列表值将是2到1到31我的意思是1到31再次1到31在listitem内它发生对于每个dropdownlist。这是我的代码: ASPX:

<asp:DropDownList ID="DropDownDay" runat="server">
                    <asp:ListItem Text="Select Day"></asp:ListItem>                   
</asp:DropDownList>
<asp:DropDownList ID="DropDownMonth" runat="server">
                    <asp:ListItem Text="Select Month"></asp:ListItem>
 </asp:DropDownList>
                    <asp:DropDownList ID="DropDownYear" runat="server">
                    <asp:ListItem Text="Select Year"></asp:ListItem>                   
  </asp:DropDownList>
aspx.cs:
//Inserting day in the day dropdown list.
        for (int i = 1; i <=31; i++)
        {
            ListItem item = new ListItem();
            item.Value = i.ToString();
            DropDownDay.Items.Add(item.Value);
        }
        //Inserting month in the month dropdown list.
        for (int i = 1; i <=12; i++)
        {
            ListItem item = new ListItem();
            item.Value = i.ToString();
            DropDownMonth.Items.Add(item.Value);
        }
        //Inserting year in the year dropdown list.
        for (int i = 1970; i <=2009; i++)
        {
            ListItem item = new ListItem();
            item.Value = i.ToString();
            DropDownYear.Items.Add(item.Value);
        }
string day = DropDownDay.Text;
string month = DropDownMonth.Text;
string year = DropDownYear.Text;
After adding i have set:
DropDownDay.SelectedIndex = 0;
DropDownMonth.SelectedIndex = 0;
DropDownYear.SelectedIndex = 0;

谢谢, 萨米特

1 个答案:

答案 0 :(得分:1)

你可能没有检查Page.IsPostBack选项

如果是,则不要重新下载您的下拉列表