我有一个编辑用户表单:
<form method="post" action="index.php" />
Email:
<input type="text" name="email" value="user@domain.com" />
Password:
<input type="password" name="password" value="thesavedpassword" />
</form>
Safari为我覆盖了我预先填写的用户名和密码,因此我添加了所有自动填充选项 - 这没有用。
在这里读到,我听说readonly已经为某些人工作了,所以我也试过了,但那仍然没有用。以下是代码的外观:
<form method="post" action="index.php" autocomplete="off" />
Email:
<input type="text" name="email" value="user@domain.com"
autocomplete="off" readonly onfocus="this.removeAttribute('readonly');" />
Password:
<input type="password" name="password" value="thesavedpassword"
readonly autocomplete="off" onfocus="this.removeAttribute('readonly');" />
</form>
我真的不确定从哪里开始!为什么Safari会覆盖已填写的字段?
非常感谢提前!
答案 0 :(得分:0)
密码管理引擎会在检测到密码字段后立即启动,一旦密码字段出现,它将在密码字段前查找最近的文本字段,并假设其中一个是用户名字段。
大多数浏览器都会忽略autocomplete属性,但我已经读过将其设置为&#34; false&#34;而不是&#34; off&#34;为某些人(不是我)工作过。
没有干净的解决方案。对我来说唯一有用的就是为safari引入隐藏的虚拟字段来填充。