Django 表单 'autocomplete'='off' 不起作用

Shr*_*ani 5 django safari google-chrome

我看过很多关于 SO 的答案,但没有一个适合我的情况。我的模型表格如下所示:

class ChangePasswordForm(forms.Form):
    current_password = forms.CharField(
        max_length=64,
        widget=forms.PasswordInput(
            attrs={'placeholder': 'Current Password', 'autocomplete': 'off'}))

    new_password = forms.CharField(
        min_length=6,
        max_length=64,
        widget=forms.PasswordInput(
            attrs={'placeholder': 'New Password', 'autocomplete': 'off'}))

    confirm_password = forms.CharField(
        min_length=6,
        max_length=64,
        widget=forms.PasswordInput(
            attrs={'placeholder': 'Confirm New Password', 'autocomplete': 'off'}))
Run Code Online (Sandbox Code Playgroud)

current_password、new_password 和confirm_password 仍在表单上填充。我检查了 Safari 和 Google Chrome,仍然遇到同样的问题。谁能告诉我我做错了什么?

Joe*_*elm 3

使用现代浏览器,我不相信您能够实现您正在寻找的行为。据Mozilla 开发者网络称,

...许多现代浏览器不支持登录字段的 autocomplete="off"。

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

这是 Firefox(自版本 38 起)、Google Chrome(自 34 起)和 Internet Explorer(自版本 11 起)中的行为。

  • 那么重置密码页面呢?自动完成功能在那里不起作用,其他大佬如何使用 Django 来完成它? (2认同)