создайте класс CSS на лету в codebehind

У меня есть страница результатов поиска, которая используется в нескольких местах с несколькими 'темами' всюду по моему сайту. У меня есть несколько отделений, которым можно было изменить их цвет фона на основе выбора переключателя (включают ли им или не). Я могу сделать это очень хорошо путем изменения класса CSS отделения на лету с JavaScript.

Однако эти темы могли потенциально измениться, и цвет фона захватывается от базы данных, когда страница создается. Прямо сейчас я делаю это в C# codebehind:

string bgStyle = "background-color:" +theme.searchTextHeaderColor +";";
OwnerSearchHeader.Attributes.Add("style", bgStyle);

В JavaScript я должен изменить этот цвет, чтобы заставить его выглядеть отключенным, и когда пользователь нажимает назад этому отделению, я должен повторно включить его путем возврата его к его исходному цвету. Но так как я только знал, что это раскрашивает код - позади, я не знаю то, что это было в JavaScript.

Таким образом, моя мысль состояла в том, чтобы создать класс CSS в получающейся странице HTML, когда страница загружается цветом фона, мне нужно. Затем я мог просто переключиться от divEnabled и divDisabled класса в JavaScript. Но я не абсолютно уверен, как сделать это.

Кроме того, я мог создать скрытый элемент, присвоить ему 'включенный' стиль и использование что как ссылка в JavaScript при включении моего отделения. Это походит на взлом, но возможно это - самый легкий путь. Я все еще плохо знаком с большим количеством этого, таким образом, я ценил бы любые предложения. Спасибо за вход!

1
задан Kevin 4 August 2010 в 14:00
поделиться

2 ответа

Итак, я задумал создать класс css в итоговой HTML-странице, когда страница загружается с нужным мне цветом фона. Тогда я мог бы просто переключиться с классов divEnabled и divDisabled в javascript. Но я не совсем уверен, как это сделать.

Да, это ансер; сделай это. В вашего документа добавьте