"将密码显示为文本"控件

n13*_*313 8 javascript browser passwords jquery

我有一个通常的登录表单,包含两个输入字段,一个用于登录,一个用于密码.我目前正在尝试添加一个控件,将输入的密码显示为纯文本,因此用户可以检查拼写错误.

问题是浏览器(至少是Firefox)不允许动态更改type输入字段的属性,所以我不能只type="password"改为type="text".另一个问题是浏览器不允许获取密码字段的值,因此我无法创建新input type="text"的密码并将其值设置为密码字段.我已经看到了这个任务的几种不同的方法,包括这个,但它们只有在键入密码时才有效,并且在浏览器自动填充密码时失败.

因此,欢迎提出任何建议.我正在使用jQuery.

Gum*_*mbo 28

你可以这样做:

<input type="password" id="password">
<input type="checkbox" onchange="document.getElementById('password').type = this.checked ? 'text' : 'password'"> Show password
Run Code Online (Sandbox Code Playgroud)

  • 这很可能在IE中无法正常工作 (4认同)
  • 更有可能.我已经确认它在IE中根本不起作用. (4认同)