禁用DropDownList中的第一项

时间:2013-01-07 15:27:41

标签: c# asp.net drop-down-menu visual-web-developer-2010

我正在尝试禁用下拉列表中的第一项,该列表链接到“提交”按钮。 首次加载页面时,我希望列表显示在列表中的第一项--Select--,而无法选择它。

在对this question的回复之后,我正在使用:

dd.Items[0].Attributes.Add("disabled", "disabled");

其中dd指的是DropdownList ..

这很有效但只有在我点击提交按钮后激活它才有效。这意味着当页面首次加载时,我仍然可以选择第一个项目。

如果我将上述代码放在Page_Load方法中,则列表默认为下一项,并且不再显示--Select--

有没有人知道如何让列表继续显示第一项但禁用它的选择?

3 个答案:

答案 0 :(得分:2)

我想你想这样做:

<asp:DropDownList ID="DropDownList1" runat="server" AppendDataBoundItems="true">
<asp:ListItem Text="--Select One--" Value="" />   
</asp:DropDownList>

答案 1 :(得分:1)

根据Robert的要求,我将我的评论复制为答案:

“如果您的下拉列表的索引为0(--Select--),您可以禁用提交按钮,或者当用户点击您的提交按钮并返回(或什么都不做)时,您可以检查索引是否为0 )“。

答案 2 :(得分:1)

DropDownList1.Items[0].Enabled = false;

DropDownList1.Items[0].Attributes["style"] = "display:none";
DropDownList1.Items[0].Attributes["disabled"] = "disabled";