Включение / отключение переключателя с помощью CSS - PullRequest
2 голосов
/ 25 сентября 2008

Есть ли способ включить / отключить переключатель (не отмеченный / не отмеченный) через CSS?

Мне нужно переключить некоторые переключатели на клиенте, чтобы значения могли быть прочитаны на сервере, но установка свойства 'enabled' на 'false' и изменение этого значения на клиенте с помощью javascript, кажется, мешает мне публикация любых изменений радиокнопки после ее включения.

См .: ASP.NET не видит изменения значения радиокнопки

Было рекомендовано использовать взамен control.style.add («отключен», «true»), но, похоже, это не отключает радиокнопку для меня.

Спасибо!

Ответы [ 4 ]

6 голосов
/ 25 сентября 2008

Disabled - это атрибут html, а не атрибут css.

Почему вы не можете просто использовать JQuery

$('#radiobuttonname').attr('disabled', 'true');

или простой старый javascript

document.getElementById(id).disabled = true;
4 голосов
/ 25 сентября 2008

Насколько мне известно, CSS не может влиять на функциональность приложения. Это может повлиять только на дисплей. Поэтому, хотя вы можете скрыть это с помощью css (display: none), вы не можете отключить его.

То, что вы могли бы сделать, это отключить его при загрузке страницы с помощью javascript. Есть несколько способов сделать это, но самый простой способ - сделать что-то вроде

<script>document.getElementById('<%=CONTROLID%>').disabled=true;</script>

и поместите это в свой файл .aspx вверху под тегом body.

3 голосов
/ 25 сентября 2008

CSS для изменения представления. JavaScript для изменения поведения. Установка элемента для включения или выключения является поведением и должна выполняться в JavaScript.

0 голосов
/ 25 сентября 2008

Если вы посмотрите html, сгенерированный asp.net для отключенной радиокнопки, вы увидите, что кнопка встроена в тег span, а для атрибута disabled диапазона установлено значение true. возможно, javascript для нацеливания на охватывающий промежуток подойдет вам

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...