做一个小东西的时候发现Firefox刷新页面后,表单没有重置,值和刷新前一样。网上搜了一下,原来可以用 autocomplete 属性解决这个问题。

autocomplete 由来已久,微软在 IE5 中首次引进这个表单属性;Netscape 6.2 (Mozilla 0.9.4) 及后续版本支持这个属性,以前的版本会忽略。直到 HTML5autocomplete 属性才成为标准的一部分,可用于类型(type)为text、search、url、tel、email、password、 datepickers、range、 color 的 <input> 元素中。

适用浏览器: Netscape 6.2 (Mozilla 0.9.4) 及后续版本,IE 5 及后续版本,Chrome 17 及后续版本。关于IE autocomplete 属性更多信息可查看 MSDN: autocomplete Property

语法:

 <form autocomplete="on|off">

属性值:

  • on - 默认值,启动自动完成
  • off - 禁用自动完成
使用时,可以将 formautocomplete 设为 on ,然后将特定表单域设为 off ;反过来也行。
<form autocomplete="on">
  Name:<input type="text" name="user-name"><br>
  Password: <input type="password" name="pwd" autocomplete="off"><br>
  <input type="submit">
</form>
<form autocomplete="off">
  Name:<input type="text" name="user-name" autocomplete="off"><br>
  Password: <input type="password" name="pwd"><br>
  <input type="submit">
</form>
虽然Firefox中 form 应用 autocomplete="off" 后,刷新页面所有表单域都会被重置,但是IE 10貌似还是有点问题,以后再抽时间研究一下。

参考链接: