отключенная кнопка кажется включенной

Используя jboss 4.2.0 и развертывая войну проекта Seam, у меня возникла проблема с отключенным атрибутом html commandButton.

Кнопки кажутся включенными, хотя для их атрибута disabled установлено значение true. Следующие три кнопки выглядят одинаково, но только кнопка «Назад» работает должным образом. Другие два выглядят включенными, и когда я нажимаю на них, ничего не происходит. Я не мог понять, почему они выглядят включенными.

<h:commandButton value="Back" action="/bbaa.seam" />
<h:commandButton value="Edit"
                disabled="#{bbg.btnEditDisabled}"
                action="#{bbg.edit()}"
                rendered="#{bbg.btnEditRendered}" />
<h:commandButton value="Save"
                disabled="#{bbg.btnSaveDisabled}"
                action="#{bbg.save()}"
                rendered="#{bbg.btnSaveRendered}" />

Вот что я вижу, когда проверяю элементы:

 <input type="submit" name="bbgForm:j_id609" value="Back">
    <input type="submit" name="bbgForm:j_id610" value="Edit"         disabled="disabled">
    <input type="submit" name="bbgForm:j_id611" value="Save" disabled="disabled">

Заранее спасибо.


person gne    schedule 12.06.2015    source источник


Ответы (2)


Изменить это...

   <input type="submit" name="bbgFormid611" value="Save" disabled>

Используйте JQuery

jQuery.fn.extend({
disable: function(state) {
    return this.each(function() {
        this.disabled = state;
    });
}});

В противном случае

person Bruce    schedule 12.06.2015

вы можете использовать псевдокласс css :disabled, чтобы изменить внешний вид «отключенных» элементов... например

input[type=submit]:disabled {
    background-color: #eee;
} 

примечание: IE не поддерживает это в более старых версиях (насколько мне известно ‹= 9).

person André R.    schedule 12.06.2015
comment
Спасибо за Ваш ответ. Это заставило меня глубже изучить проблему. Я обнаружил, что в действующей системе проверенный sytle показывает определение input[type=submit][disabled], а кнопки ДЕЙСТВИТЕЛЬНО выглядят отключенными. Тем не менее, в тестовой среде я вижу только определения input[type=submit], информация о стиле [disabled] не появляется. Я проверил CSS-файлы наших проектов и нашел только ‹u:selector name=input[type=submit][disabled], input[type=button][disabled]› ‹u:style name=opacity value=0.33/ › ‹/u:selector› Где я должен искать определение стиля «отключено»? - person gne; 12.06.2015
comment
кажется, вы используете RichFaces ... к сожалению, я не знаю формат XCSS, который они используют ... из того, что я понимаю из вашего селектора и стиля, я ожидаю, что отключенная кнопка будет иметь непрозрачность 1/3. почему кнопки ведут себя по-разному на разных этапах, я не могу сказать отсюда ... может быть, в вашей среде тестирования активны еще какие-то правила css, которые переопределяют «отключенный» вид? - person André R.; 12.06.2015
comment
да, вы правы, я использую RichFaces, извините, что не упомянул в первую очередь. Эта переопределяющая проблема может быть причиной, поскольку в тестовой среде (на этот раз проверенной в Chrome) я вижу определение input[type=submit][disabled], но определение выглядит пассивным для меня (оно имеет серый цвет фона). Спасибо за ваш Комментарии:) - person gne; 15.06.2015