【问题标题】:How can I make my password fields always empty?如何让我的密码字段始终为空?
【发布时间】:2011-02-20 05:07:01
【问题描述】:

我有一个表单字段,用户可以在其中更改密码,但如果他们将设置设置为记住密码,他们的密码就会显示出来。有没有办法让该字段始终为空?这样他们就必须始终输入密码。

<label for="oldpassword" class="styled">Old password:</label>
<input type="password" id="oldpassword" name="oldpassword"/><br />

【问题讨论】:

  • 这是非常不好的做法:如果他们想记住密码,就让他们记住。
  • 这不是用来登录的。这更多是为了他们想更改密码的时候。

标签: forms passwords


【解决方案1】:

您可以在页面加载后不久清除旧密码。

使用 jQuery:

setTimeout(
    function() { $(':password').val(''); },
    1000  //1,000 milliseconds = 1 second
);

【讨论】:

  • 专门用于选择器中类型属性的使用,新东西要学习
  • 因为在清除密码之前需要延迟 - 至少一秒钟,如 SLaks 所示 - 我最初显示不透明度设置为 0 的字段,然后在值之后动画回 1被清除。 IMO 它看起来比让角色子弹出现和消失要好。
【解决方案2】:

不。你无法处理这种浏览器行为。

【讨论】:

  • 从技术上讲,这是真的(即使是 8 年后),值得称赞。浏览器插入密码后可以清空该字段,但不能“使该字段始终为空”。
【解决方案3】:
<input type="password" name="my_password_field" autocomplete="off" />

【讨论】:

    【解决方案4】:

    使用: 密码输入中的autocomplete="new-password"属性

    【讨论】:

      【解决方案5】:

      使用 jQuery:

      $(window).load(function() {
          $("input[type=password]").val('');
      });
      

      【讨论】:

        猜你喜欢
        • 2021-07-18
        • 2020-07-19
        • 1970-01-01
        • 2014-06-14
        • 1970-01-01
        • 2010-11-30
        • 2011-08-21
        • 2015-07-24
        • 1970-01-01
        相关资源
        最近更新 更多