You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何禁用密码输入字段的Manage Password功能?已尝试autocomplete属性无效

Angular + Angular Material 环境禁用Chrome密码管理器弹窗方案

Chrome 86及之后版本已刻意忽略密码字段上的autocomplete="off"、autocomplete="new-password"属性,仅靠修改该属性无法禁用密码管理提示,以下是2021年及之后版本实测可行的前端实现方案:

  • 方案1:动态切换输入框type属性
    利用Chrome仅对常驻type="password"的可交互输入框触发密码提示的规则,在输入框失焦时切换为普通文本类型,聚焦时切回密码类型,配合autocomplete="one-time-code"属性双重规避检测:
    组件TS代码:

    // 组件类中定义变量与方法
    inputType: 'text' | 'password' = 'text';
    
    handleFocus(): void {
      this.inputType = 'password';
    }
    
    handleBlur(): void {
      this.inputType = 'text';
    }
    

    模板代码:

    <mat-form-field appearance="outline">
      <mat-label>密码</mat-label>
      <input 
        matInput
        [type]="inputType"
        (focus)="handleFocus()"
        (blur)="handleBlur()"
        autocomplete="one-time-code"
      >
    </mat-form-field>
    
  • 方案2:动态控制readonly属性
    初始状态给输入框添加只读属性,Chrome不会触发只读密码字段的密码提示,用户点击输入框时再移除只读属性即可:
    组件TS代码:

    isInputReadonly = true;
    

    模板代码:

    <input 
      matInput
      type="password"
      [readonly]="isInputReadonly"
      (click)="isInputReadonly = false"
      autocomplete="one-time-code"
    >
    
  • 方案3:自定义密码掩码(100%规避检测)
    完全不使用type="password"属性,改用普通文本输入框,自行实现输入字符转圆点•的掩码逻辑,从根源上避开Chrome的密码字段检测规则,该方案不会触发任何密码管理器提示。

以上方案均支持Chrome 90+(2021年发布的正式版本)及更高版本,无需修改用户浏览器设置即可生效。

内容的提问来源于stack exchange,提问作者Jurj

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 07:42:00