Jsf 如何使用<;p:水印>;对于<;p:inplace>;编辑
我想使用Jsf 如何使用<;p:水印>;对于<;p:inplace>;编辑,jsf,jsf-2,primefaces,watermark,in-place-editor,Jsf,Jsf 2,Primefaces,Watermark,In Place Editor,我想使用作为编辑器。我试了一下,如下所示 <p:watermark for="txtSvcName" value="Please enter service name..." /> <p:inplace id="ipSvcName" editor="true" > <p:inputText id="txtSvcName" value="#{service.serviceName}" ma
作为
编辑器。我试了一下,如下所示
<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>
但不幸的是,这不起作用。如何实现这一点?根据,当发生某些事件时,必须通过javascript调用p:watermark
。您在p:inputText
上有很多事件,您可以在这里拨打电话:onblur
,onchange
。。。只需调用PrimeFaces.showWatermarks()当您需要的代码发生时,代码>功能。您也应该看看,因为还有另一个功能可以在需要时清除水印。祝你好运
已编辑
当用户保存插入的内容时,可以触发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>
如果您没有询问有关jsf 1.2的问题,请不要使用[jsf-1.2]
标记。对不起,您是对的;我猜,我用错标签了。我会更加小心的。谢谢…谢谢你的回复。我分析了PF指南。但事实上我找不到解决这个问题的办法;我应该在哪里使用显示和清除功能?你知道吗?不客气。这取决于你想要实现什么。我已经用一些有用的功能编辑了我的回复。再次感谢。实际上,当文本框位于inplace editor中时,水印最初不会显示文本。我想我们也可以使用javascript来解决这个问题。我想我会给文本框一个初始值,并在触发onclick事件时清除文本框值。加载页面时可以调用Primefaces.showWatermarks()
,或者在使用onclick=“Primefaces.showWatermarks();”
单击p:inputText
时调用它。
嘿,我发现了问题。如果其值为空,Inplace不显示内部元素。当我对innerplace使用'emptyLabel'属性时,一切都正常。谢谢你所有的回答。。。