【问题标题】:Turn off autocompletion for management forms关闭管理表单的自动完成
【发布时间】:2018-06-28 20:43:29
【问题描述】:

在我们的 Web 应用程序中,我们提供了一个仪表板,其中包含一个管理表单,用于创建和更改注册用户的用户数据。

问题在于,Firefox 将其中两个字段识别为登录字段,并建议在提交时为下次访问此表单自动完成。我们根本不希望我们的管理员收到此建议,因为当管理员在其他用户中显示他们自己的登录数据更改表单时,它会导致混乱。

我尝试关注MDN suggestions 在这种情况下如何处理自动完成。他们提供了以下解释:

如果网站为表单设置了 autocomplete="off",并且表单包含用户名和密码输入字段,则 浏览器仍会提供记住此登录信息,如果用户同意,下次用户访问该页面时,浏览器将自动填充这些字段。

还有这个:

如果作者想防止在用户管理页面中自动填充密码字段,用户可以为自己以外的其他人指定新密码,则应指定 autocomplete="new-password",尽管对此的支持尚未已在所有浏览器中实现。

我们的表单目前看起来大致是这样的,但 Firefox 仍然提供自动完成它。

<form action="" method="post" autocomplete="off">
    <input id="id_first_name" name="first_name" type="text">
    <label for="id_first_name">First Name</label>

    <input id="id_last_name" name="last_name" type="text">
    <label for="id_last_name">Last Name</label>

    <input id="id_raw_password" name="raw_password" autocomplete="new-password" type="password">
    <label for="id_raw_password">New Password (The current password is not displayed here.)</label>

    <input id="id_email" name="email" type="email">
    <label for="id_email">Email address</label>

    <!-- some more user profile fields like birth date etc. -->
</form>

有人知道如何防止这种情况发生吗?

【问题讨论】:

    标签: html google-chrome firefox forms


    【解决方案1】:

    如果作者想防止在用户管理页面中自动填充密码字段,用户可以为自己以外的其他人指定新密码,则应指定 autocomplete="new-password",尽管对此的支持尚未已在所有浏览器中实现。

    事实证明,firefox 是这些浏览器之一,它没有实现它自己的建议。

    关于这个的详细讨论可以在this bug tracker thread找到。

    在与我们的开发人员讨论这个问题后,我们决定根本不提供用于更改其他用户密码的密码字段。 如果其他人遇到此问题,我们的建议是提供一种向用户发送电子邮件的方法,允许他/她自己更改密码。 这甚至可能被认为是更好的做法,因为它确保用户密码永远不会暴露给其他人,而不是用户本人。

    【讨论】:

      猜你喜欢
      • 2021-04-14
      • 2016-02-14
      • 2016-01-11
      • 1970-01-01
      • 1970-01-01
      • 2018-01-13
      • 2010-12-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多