ASP.NET checkbox отсутствует CSS-класс

У меня есть следующий элемент управления ASP.Net, добавленный на страницу:

<asp:CheckBox ID="chkActive" runat="server" CssClass="myClass" />

Но когда страница отображается, она игнорирует значение свойства CssClass:

<input name="ctl00$mainContent$chkActive" id="ctl00_mainContent_chkActive" type="checkbox" value="on"/>

Любые идеи о том, как установить класс css в ASP.Net?

Спасибо Алан.

Ответ 1

Хорошо, когда вы устанавливаете флажок CssClass в ASP.Net, он применяет класс к диапазону, который обертывает этот флажок. Поскольку класс css не применяется непосредственно к элементу, он не переопределяет класс, который был применен ко всем элементам ввода. Поэтому я использовал jQuery для выбора элемента и применения необходимого стиля.

$("input[type=checkbox]").addClass("myClass");

Ответ 2

Я нашел другой ответ на это, вы можете использовать свойство

MyCheckBox.InputAttributes["class"] = "myClass";

чтобы назначить класс непосредственно флажку asp из кода. Просто отметив это, так как я нашел этот пост через Google, и указанный ответ не будет работать для меня.

Ответ 3

Этот пост довольно старый, но я выложу свое решение, чтобы помочь любому, кто пришел из Google (как и я).

Вы можете использовать селектор дочерних элементов > в jQuery, потому что в wrapping span указан CssClass и один дочерний элемент input. В вашем коде:

$('.myClass > input').addClass("myClass");

Ответ 4

Вы можете обернуть его в span классом.

Ответ 5

если вы используете класс только для того, чтобы установить этот флажок с этим именем класса, вы можете использовать if ($ ('. myClassname > input'). is (': checked')) {//ваше действие}

Ответ 6

Вы можете alos просто установить класс css, как

    <asp:CheckBox ID="cbValittu" runat="server" Checked='<%# Eval("Valittu")%>' Class="checBoks" />

Css class can look something like:
.checBoks input
{
    width: 18px;
    height: 18px;
    vertical-align:middle;
}