【问题标题】:How to do autocomplete=“off” for p:inputText? [duplicate]如何为 p:inputText 执行 autocomplete=“off”? [复制]
【发布时间】:2015-05-20 02:23:01
【问题描述】:

我正在使用 primefaces 做一个项目。

因为我正在使用用户登录页面。

我的问题是,当我在p:inputText 上输入文本时,之前的值出现在p:inputText 上。

我在p:inputText 中使用了autocomplete=“off”,并在每次登录时清除了我的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 作用域是什么?
  • 会话是我的 bean 范围。@ jNick
  • 如果您不关心为整个&lt;h:form&gt; 禁用autocomplete,请参阅stackoverflow.com/a/38837254/1980659

标签: jsf primefaces


【解决方案1】:

首先检查您的会话范围 bean 是否没有存储该值。

接下来,您需要清除 Mozilla 浏览器缓存,而不是历史记录。如果浏览器已经缓存了表单数据,它将继续自动填写并忽略您的autocomplete=“off” 属性。这是一种在不同浏览器中表现不同的功能/行为。例如,Internet Explorer 可能会尊重您的 autocomplete=“off” 属性而忽略其自己的缓存,而 Mozilla Firefox 可能不会。此结果也可能取决于浏览器的版本(例如 IE 8 与 IE9)

【讨论】:

  • 是的,在互联网探索中不会出现以前在该 p:inputText 字段上输入的值。唯一的问题是在 Mozilla 缓存中。我会检查一下。谢谢
  • 我也清除了我的 Mozilla 缓存,但它仍然无法正常工作。单击 p:inputText 时仍会出现先前输入的值
猜你喜欢
  • 2011-03-13
  • 2019-03-15
  • 2012-09-06
  • 2013-08-10
  • 2014-12-29
  • 2014-11-07
  • 2021-07-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多