更改复选框列表中项目的背景颜色

时间:2012-03-22 09:49:32

标签: asp.net checkboxlist uibackgroundcolor

我想在复选框列表中更改所选项目的背景颜色。 我试过了,

 CBList1.Items[0].Attributes.Add("style", "background-color: red;");

但是这里复选框的背景颜色和相关文本已更改。 有没有办法只改变复选框的背景颜色而不改变相关文本的背景颜色?

2 个答案:

答案 0 :(得分:0)

请尝试以下代码:

newCkItm.Attributes.Add(“id”,“alpha”);

这样,您可以将所有样式与代码分开,而不必在每次需要调整CSS时重新编译等。

CSS本身看起来像这样:

    #cblCalendarFilter {
    border:none;
    border-collapse:collapse;
}

#cblCalendarFilter td {
    padding:0;
}

#cblCalendarFilter span {
    display:block;
    padding:2px;
}

#cblCalendarFilter #alpha {
    background:red;
}

#cblCalendarFilter #beta {
    background:yellow;
}

答案 1 :(得分:0)

不幸的是,我认为输入标记(当type = checkbox时)根本不适用于style属性。创建一个新的复选框输入并尝试自己。

所有asp:CheckBoxList / asp:ItemListasp:CheckBox都会为输入和标签生成HTML,并将它们包装在span标记中。该span标签是应用样式的地方。

如果对复选框进行分组不是一个大问题,您可以使用没有asp:CheckBox属性的单个Text控件,并在标记之外写入相关文本。

<asp:CheckBox ID="cb1" runat="server" />associated text 1
<asp:CheckBox ID="cb2" runat="server" />associated text 2
<asp:CheckBox ID="cb3" runat="server" />associated text 3

但是,您仍然必须调用cb1.Attributes而不是cb1.InputAttributes来应用该样式。