Изменение цвета фона поля ввода редактируемой колонки в простых числах, доступных для данных при изменении значения - PullRequest
2 голосов
/ 18 февраля 2012

У меня есть редактируемый столбец в таблице данных.Код:

<p:column id="articleDescription" headerText="Article Description" filterBy="#{article.description}" filterMatchMode="startsWith">
  <p:inputText id="description" value="#{article.description}"style="border:none; box-shadow:none;" />
</p:column>
  1. Я хочу изменить цвет фона inputText - описание события - valueChange.Как я могу это изменить?
  2. Кроме того, его цвет по умолчанию должен быть таким же, как у его родительской строки?Является ли это возможным?Как это можно сделать?

Спасибо, Шиха

Ответы [ 2 ]

3 голосов
/ 12 апреля 2012

Цвет фона ячейки был установлен как цвет строки родителей как:

.inputTextStyle {
    background-color: transparent !important;
}

<h:inputText id="vendorDiscountPerInputTxt"
    value="#{articlePromo.descPromoPorcentaje}"
    styleClass="inputTextStyle">
</h:inputText>

Кроме того, цвет фона ячейки при событии изменения значения изменился как:

$(document.getElementById(str)).css("background-color", "pink !important");

Требуется пометить это как важное, потому что простые символы отмечают это как важное.Итак, чтобы переопределить это.

0 голосов
/ 18 февраля 2012

Я хочу изменить цвет фона inputText - описание события - valueChange. Как я могу это изменить?

Просто выполните JavaScript / jQuery во время события change элемента ввода (PrimeFaces поставляется с jQuery в комплекте, вам не нужно устанавливать его самостоятельно).


Кроме того, цвет фона по умолчанию для него должен быть таким же, как у его родительской строки? Является ли это возможным? Как это можно сделать?

С помощью jQuery легко получить родительскую строку и получить ее свойство CSS background-color.


Если предположить, что вы двигаетесь в направлении jQuery, это будет выглядеть примерно так

<p:inputText styleClass="changeable" />

с

$(document).delegate("tr :input.changeable", "change", function() {
    var $this = $(this);
    $this.css('background-color', $this.closest('tr').css('background-color'));
});
...