是否可以通过编程方式隐藏单选按钮列表的特定列表项
本文关键字:列表 单选按钮 可以通过 编程 方式 隐藏 是否 | 更新日期: 2023-09-27 18:07:11
我在aspx页面中使用了gridview。。我有一个列表,在一个单元格中有六个水平排列的单选按钮。
我需要隐藏第一个单选按钮。如何通过编程实现这一点?
<asp:GridView ID="CrowdRatingGrid" runat="server" AutoGenerateColumns="false" AllowPaging="true" PageSize="4" OnPageIndexChanging="CrowdRatingGrid_PageIndexChanging" ViewStateMode="Enabled">
<PagerSettings Mode="Numeric" PageButtonCount="4" />
<Columns>
<asp:TemplateField>
<HeaderTemplate>
Rating
</HeaderTemplate>
<ItemTemplate>
<asp:RadioButtonList runat="server" ID="Rating" SelectedValue='<%# Bind("rating_id") %>'
RepeatDirection="Horizontal">
<asp:ListItem Value="0" />
<asp:ListItem Value="1" />
<asp:ListItem Value="2" />
<asp:ListItem Value="3" />
<asp:ListItem Value="4" />
<asp:ListItem Value="5" />
</asp:RadioButtonList>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
我需要隐藏值为0的列表项。我将如何实现这一点?
是的,您可以通过将其Enabled
属性设置为false
:来隐藏一个
Rating.Items[0].Enabled = false;
根据OP的评论进行编辑。要完全消除它,你需要这样做:
Rating.Items.RemoveAt(0);
然后当你想要它回来的时候,你需要这样做:
Rating.Items.Insert(0, "0");
EDIT:好的,我深入研究了一下,看看当您将RadioButtonList控件设置为Horizontal时,.NET是如何渲染它的(这是一个每个项都有<td>
的表(。
试试这个:
var bli = Rating.Items[ 0 ];
bli.Attributes.Add( "hidden", "hidden" );
运行良好。
RadioButtonList.Items[index].Enable=True/False;
例如:
rdTypePackage.Items[1].Enabled = false;
radioListID.Items[index].Enabled = true/false;
它将100%发挥作用。
旧线程,不过要实现这一点,您可以执行以下操作:
//Ensure the item is disabled
rblRating.Items[0].Enabled = false;
//Ensure the item is not selected
rblRating.Items[0].Selected = false;
//next row of code is hiding your radio button list item through css
rblRating.Items[0].Attributes[HtmlTextWriterStyle.Visibility] = "hidden";
ListItem li = Rating.Items(0);
Rating.Items.Remove(li);