【发布时间】:2013-01-05 19:11:14
【问题描述】:
我正在 ASP.NET WebForms 中创建一个项目。虽然我已经做了很多次了,但是这次下拉列表让我很困扰。
我从数据库中获取项目,然后使用 FOR 循环将它们一一添加到我的下拉列表中。这很好用。但问题是我无法从列表中舒适地选择一个项目,每当我尝试从下拉列表中选择一个项目时,它会将选择捕捉到第一个元素,因此很难选择所需的项目。
我该如何解决这个问题?
假设我将光标移到列表中的第 9 项上,然后它交替选择第 1 项和第 9 项,速度如此之快,以至于我看到它们都被选中了。
代码隐藏
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
DropDownList1.Items.Clear();
con.ConnectionString = ConfigurationManager.ConnectionStrings["familyConnectionString"].ConnectionString;
con.Open();
adp = new SqlDataAdapter("select distinct family_head from family", con);
DataSet ds = new DataSet();
adp.Fill(ds, "family");
con.Close();
for (int i = 0; i < ds.Tables["family"].Rows.Count; i++)
DropDownList1.Items.Add(ds.Tables["family"].Rows[i][0].ToString());
}
}
ASPX
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:DropDownList ID="DropDownList1" runat="server" Width="150px">
</asp:DropDownList>
<asp:DropDownList ID="DropDownList2" runat="server" Width="150px">
</asp:DropDownList>
<asp:Button ID="Button1" runat="server" Height="30px" onclick="Button1_Click"
Text="Submit" Width="145px" BackColor="#465767" ForeColor="White" />
<asp:RoundedCornersExtender ID="Button1_RoundedCornersExtender" runat="server"
Enabled="True" TargetControlID="Button1" Corners="All" Radius="10">
</asp:RoundedCornersExtender>
<br />
<br />
<br />
</asp:Content>
一个 CSS 关键帧动画在页面背景中工作,这是一个原因吗?
【问题讨论】:
-
你的浏览器是什么,请在此处发布代码和.aspx html代码。
-
发布了代码和标记。
-
我想 DropDownList1 有问题吗?你在哪里尝试得到它的选择?我看到你使用 IsPostBack。
-
我没有对我将使用所选项目的部分进行编码。你能告诉我确切的问题是什么吗?在您的建议之后,我还添加了 ispostback。
-
从内容占位符中删除您的脚本管理器,并将其移动到您的标记顶部的表单标记之后。
标签: c# asp.net drop-down-menu