【问题标题】:Why my password change form is getting values automatically?为什么我的密码更改表单会自动获取值?
【发布时间】:2015-12-27 12:42:59
【问题描述】:

我的设置页面上有一个表单,可让用户更改密码。我的问题是旧密码的输入字段自动获取用户已登录用户名的值,新密码字段获取密码。我尝试更改所有输入类型的文本,它解决了我的问题,似乎浏览器假设一个文本字段后跟密码字段作为登录表单。但我想将旧密码的输入类型设置为文本。如何获得空输入字段?

<form action="" method="post">
   <label>Old Password</label> <input type="text" name="oldpassword">
   <label>New Password</label> <input type="password" name="newpassword">
   <label>Confirm Password</label> <input type="password" name="newpassword2">
</form>

【问题讨论】:

    标签: php html


    【解决方案1】:

    你必须关闭autocomplete,但是这个可能会被许多其他使用它来存储密码的用户所反对:

    <form action="" method="post">
      <label>Old Password</label> <input autocomplete="off" type="text" name="oldpassword">
      <label>New Password</label> <input autocomplete="off" type="password" name="newpassword">
      <label>Confirm Password</label> <input autocomplete="off" type="password" name="newpassword2">
    </form>
    

    您是否使用type="text" 代替oldpassword?对我来说似乎是一个错字。请更正。

    此外,在 Chrome 中,autocomplete 存在问题。您可能需要使用一些虚假字段。请参阅Disabling Chrome Autofill 了解更多信息。

    【讨论】:

    • @bɪˈɡɪnə 你想要旧值是吗?
    • 对不起,亲爱的,如果我无法解释我的问题。这不是自动完成问题;它显示用户名和密码,就像我们使用 value 属性
    【解决方案2】:

    使用自动完成,有三种方法可以禁用autocomplete

    第一个输入:

    <input type='text' autocomplete='off' />
    

    第二个表格:

    <form action='' autocomplete='off'>
    

    javascript中的第三个:

    $('input').attr('autocomplete', 'off');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-16
      • 2023-01-04
      • 1970-01-01
      • 2019-02-22
      相关资源
      最近更新 更多