<p:watermark>在生成的HTML源</p:watermark>中显示为未解析

时间:2013-09-03 19:46:32

标签: jsf jsf-2 primefaces watermark

我正在使用JSF 2.0。我一直在尝试为输入文本渲染一个占位符,而我正在尝试使用primefaces的水印。这是jsf代码

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:c="http://java.sun.com/jstl/core"
      xmlns:p="http://primefaces.org/ui">
....
....
<h:form>
    <table>
        <thead>
            <tr>
                <th>
                    <h:outputText value="Header"/>
                </th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td>
                    <h:inputText id="first" value="#{bean.firstValue}"/>
                    <p:watermark for="first" value="Fill me"/>
                </td>
            </tr>
        </tbody>
    </table>
</h:form>

这是它的呈现方式:

<form id="j_id_1v" name="j_id_1v" method="post" action"/mypage/app/main.xhtml" enctype="application/x-www-form-urlencoded">
    <table>
        <thead>
            <tr>
                <th>
                    "Header"
                </th>
            </tr>
        </thead>
        <tbody>
            <input id="j_id_1v:first" name="j_id_1v:first" type="text" value>
            <p:watermark for="first" value="Fill me"></p:watermark>
        </tbody>
    </table>
</form>

#{bean.firstValue}中的值为 null 。不确定这是否正常,或者它是否应该是一个空字符串。 问题是渲染的输入字段为空。没有水印。 我做错了什么?

1 个答案:

答案 0 :(得分:0)

你也需要添加primefaces jar,就像添加JSF jar / s

一样

如果您想使用水印,可以使用jquery watermark plugin来表示...