How do I disable a ListItem?

2019-06-20 06:26发布

问题:

I've got a DropDownList in ASP.NET that has a ListItem that requires being disabled... but I DON'T mean Enable="False". And I also don't want to disable the entire DropDownList, just one specific ListItem. What I'm talking about is written in HTML as disabled="disabled", like so:

<option disabled="disabled" value="-1">Disabled Option</option>

Anyone know how to do this in ASP.NET?

回答1:

Have you tried adding disabled="disabled" on the ListItem element?

<asp:DropDownList runat="server" ID="id">
    <asp:ListItem Text="Test" Value="value" disabled="disabled" />
</asp:DropDownList>

Bear in mind that browser compatibility varies: http://www.lattimore.id.au/2005/06/18/disable-options-in-a-select-dropdown-element/



回答2:

You could try setting the attribute from code behind, that way you can programmatically decide what value to be set.

So in your example you would do something like this:

var listItem = DropDownList.Items.FindByText("Your Item Text");
listItem.Attributes["disabled"]="disabled";