2015-05-08 2 views
-2

Я делаю проект с использованием простых поверхностей.Изменение p: цвет водяного знака динамически

В моем проекте мне нужно изменить цвет p:watermark (правки), когда я нажимаю p:commandButton.

Я пробовал, но не работает.

Здесь я добавил свой крошечный код:

Пример кода:

<p:inputText id="userNameField" update="info"/> 
<p:watermark for="userNameField" value="#{...}" id="userLabelWaterMarkId"/> 

<p:commandButton id="loginButtonId" onclick="showLoginBox();" update="info"> 
</p:commandButton> 

JQuery

function showLoginBox() 
    { 
    $(".ui-watermark").css("color", "red"); 
    } 

Любая идея?

+1

я не вижу какой-либо класс для P: водяной знак в виде .ui-watermark.is его там в исходном коде? – Jayababu

+0

try $ ("# userLabelWaterMarkId"). Css ("color", "red"); – captainsac

+0

Я уже пробовал, который вы отправили. Но это тоже не работает. и я видел этот код стиля .ui-watermark в другом потоке stackoverflow, поэтому я выбрал notits, а не мой оригинальный код. – VenRaj

ответ

-1
$(".ui-watermark").css("color", "red"); 

Здесь цвет представляет цвет шрифта. Если вам нужно изменить цвет фона, используйте это.

$(".ui-watermark").css("background-color", "red"); 

убедитесь, что водяной знак, имеющий класс под названием .ui-watermark, его не существует в коде, публикуемую.

+0

Где он сказал, что ему нужно изменить цвет фона? Он сказал цвет конкретно. –

+0

Мне нужно изменить цвет текста, а не цвет фона ... и .ui-watermark не работает. – VenRaj

+0

нет элемента водяного знака (так же нет id) в современных браузерах НА КЛИЕНТЕ – Kukeltje

-1

Вы должны создать на функции мыши, как это:

function showLoginBox(){ 
    $("#userLabelWaterMarkId").css("color", "red"); 
} 

$('#loginButtonId').on('click', showLoginBox()) 

или

$('#loginButtonId').on('click', function() { 

    $('#userLabelWaterMarkId').css('color', 'red'); 

}) 

связывание JS событие внутри HTML не лучшая практика. Вам необходимо создать код привязки события в вашем файле javascript.

+0

нет элемента водяного знака (так и нет id) в современных браузерах. КЛИЕНТ – Kukeltje

0

Класс ui-watermark существует в OLD browsers, поскольку PrimeFaces использует некоторую обратную совместимость «взломать», что делает водяной знак jquery-ui. Современные браузеры делают это по-другому и нуждаются в стилизации по-разному ... Для этих браузеров ваш вопрос является дубликатом ссылки ниже.

Смотрите также:

Смежные вопросы