【问题标题】:FIREFOX - HTML - password INPUT - When page loads the field contains data?FIREFOX - HTML - 密码输入 - 页面加载时字段包含数据?
【发布时间】:2012-09-10 12:32:19
【问题描述】:

我在使用 firefox 查看网站时遇到密码输入问题,这里是 html:

<div class="passField">
    <label for="password">Password : </label>
    <input type="password"
        name="password" id="password" 
        title="6 to 20 characters, one uppercase and numbers allowed." placeholder="APassword123"
        maxlength="20" pattern="^[A-Za-z0-9]{6,20}$"
    />
    <span class="inputDesc">'.$passwordDesc.'</span>
</div>

通过电子邮件中的链接将用户定向到包含此输入的页面,如下所示:

http://www.mysite.com/reset.php?theId=1&theKey=699acfc121edfd91df48d5d99044d74d

执行数据库检查,如果详细信息与我的数据库中与该用户 ID 相关的详细信息匹配,则向用户显示两个输入。一个用于初始密码,一个用于确认输入的密码。

我遇到的问题是,当页面加载时,初始密码输入包含几个点(数据),而第二个输入包含占位符......两者都是密码类型。

这是一个屏幕截图,看看我在说什么:

这是 IE 中的同一页面:

据我了解,它们都应该统一显示,无论输入类型如何,都像往常一样显示占位符,并且由于我没有为此输入分配任何值,为什么在没有时以这种方式呈现值甚至根据页面来源分配值?

任何与此相关的帮助、理解或信息将不胜感激,谢谢!

【问题讨论】:

    标签: html firefox input passwords


    【解决方案1】:

    在字段上使用 autocomplete="off" 以避免预先填写字段。当然,这不考虑可能的 JavaScript 或填充该字段的任何其他内容。

    编辑 - 进一步解释(因为它被要求)

    大多数浏览器都具有自动填写表单字段的内置功能。他们填写具有用户经常填写的标准名称的字段(这通常首先被问到)例如地址字段通常是这样填写的。

    该功能的第二部分是填写保存的密码,但浏览器并不是很聪明。例如,当您在http://example.com/phpmyadmin 上保存密码时,他们还会在http://example.com/ 的主页上填写密码字段,这通常是不正确的,因为主页上的登录很肯定不是管理区域的登录。

    您可以通过设置 autocomplete=off 来解决此问题,这会为输入字段关闭此功能(如果您愿意,这可能也适用于整个表单)或为字段指定不同的名称。而使用 autocomplete=off 更可靠。

    【讨论】:

    • 您能否为我简要解释一下这种奇怪现象背后的原因?非常感谢!
    • 用解释编辑了我的答案。
    • 谢谢 Rene,我真的很感激!它现在非常有意义,我相信它将来也会对其他人有用!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-01
    • 2012-10-13
    • 1970-01-01
    • 2015-08-04
    • 2016-05-11
    • 1970-01-01
    相关资源
    最近更新 更多