在我的场景中,有一个包含RadioButtonList的UserControl(Day),这个UserControl包含在另外5个UserControls中(星期一,星期二......星期五),这个UserControls放在aspx页面中。
在Day UserControl背后的代码中,存在以下代码。
rdlUser.DataTextField = "Description";
rdlUser.DataValueField = "Value";
rdlUser.DataSource = userTypes;
rdlUser.DataBind();
rdlUser.Items[0].Enabled = false;
Day UserControl中rdlUser的标记如下...
<asp:RadioButtonList ID="rdlUser" AutoPostBack="true" OnSelectedIndexChanged="rdlUser_SelectedIndexChanged"></asp:RadioButtonList>
在来自数据库的Day UserControl中,有4个userTypes被创建为rdlUser
。 userTypes在下面给出......
rdlUser_0 - Normal User
rdlUser_1 - Supervisor
rdlUser_2 - Admin
rdlUser_3 - Super User
如何将课程NormalUser
应用于&#34;普通用户&#34;并从具有相关属性的代码中作为SpecialUser
类休息。
答案 0 :(得分:1)
RadioButtonList生成包含输入和标签的HTML输出。
<input id="rdlUser_0" type="radio" name="rdlUser_0" value="0">
<label for="rdlUser_0">Normal User</label>
最佳做法,将选项的样式添加到css文件中。
#rdlUser input[value='0'] + label {color:red}
或者
#rdlUser label:nth-child(1){color:red}
答案 1 :(得分:1)
您可以循环所有ListItem
元素。
foreach (ListItem item in rdlUser.Items)
{
if (item.Text == "Normal User")
{
item.Attributes.Add("class", "NormalUser");
}
else
{
item.Attributes.Add("class", "SpecialUser");
}
}
请注意,这会在RadioButton周围包裹<span class="NormalUser">
,因此您可能需要更改css。
.SpecialUser label { color:red; }