0

編集者<p:watermark>に使いたい。<p:inplace>以下のようにしてみました

<p:watermark for="txtSvcName" value="Please enter service name..." />
<p:inplace id="ipSvcName" editor="true" >                                   
    <p:inputText id="txtSvcName" value="#{service.serviceName}"  maxlength="50" 
     readonly="#{not subMerchantManagement.editPerspective}"    converter="UpperCaseConverter" />                                   
</p:inplace>

しかし、残念ながらそれはうまくいきません。どうすればこれを達成できますか?

4

1 に答える 1

0

Primefaces Showcaseによるとp:watermark、何らかのイベントが発生したときに JavaScript 経由で呼び出す必要があります。p:inputText呼び出しを行うことができる場所には多くのイベントがあります: onblur, onchange...PrimeFaces.showWatermarks();必要なイベントが発生したときに関数を呼び出すだけです。必要なときに透かしを消去する別の機能があるため、Primefaces のドキュメントも参照してください。幸運を。

編集済み

ユーザーが埋め込みコンテンツを保存すると、ajax イベントをトリガーできます。そのリクエストが処理されたら、show 関数を呼び出してメイン コンテナを更新します。重宝すると思います。

<p:panel id="panel">
    <p:watermark for="txtSvcName" value="Please enter service name..." />
    <p:inplace id="ipSvcName" editor="true" emptyLabel="Please enter service name..." >                                   
        <p:inputText id="txtSvcName" value="#{service.serviceName}" maxlength="50" 
            readonly="#{not subMerchantManagement.editPerspective}"    converter="UpperCaseConverter" /> 
        <p:ajax event="save" listener="#{subMerchantManagement.handleSave}" 
            oncomplete="PrimeFaces.showWatermarks();" update="panel" />  
    </p:inplace>
</p:panel>
于 2013-01-13T12:37:57.303 に答える