我正在做一个使用primefaces的项目。
在这里我使用的是用户登录页面。
我的问题是,当我在p:inputText
上输入文本时,前一个值出现在p:inputText
上。
我使用autocomplete=“off”
在p:inputText
和我清除我的Mozilla浏览器历史记录每次登录,但仍然不能很好地工作。
代码:
<h:form>
<p:inputText id="userName" autocomplete="off" value="...">
<p:ajax event="focus" listener="..." update="infoMessage"/>
</p:inputText>
<p:watermark for="userName" value="..." id="userLabelWaterMarkId"/>
<p:password id="password" autocomplete="off" value="....">
<p:ajax event="focus" listener="....." update="infoMessage"/>
</p:password>
<p:watermark for="password" value="..." id="pwddWaterMarkId"/>
</h:form>
任何想法?
首先检查会话作用域bean是否没有存储该值。
接下来,您需要清除Mozilla浏览器缓存,而不是历史记录。如果浏览器已经缓存了表单数据,它将继续自动填充它并忽略您的autocomplete=“off”
属性。这是一个在不同浏览器中表现不同的特性/行为。例如,Internet explorer可能会尊重您的autocomplete=“off”
属性,而忽略它自己的缓存,而Mozilla Firefox可能不会。这个结果也可能取决于浏览器的版本(例如ie8 vs IE9)