【发布时间】:2017-07-18 16:19:28
【问题描述】:
在开发我的用户控制面板时,我认为拥有Password Vault 是一个很酷的功能。在这里,用户可以将组密码和用户名共享给他们的工作组(如果他们与同事共享帐户)并存储他们自己的个人密码。这也显示了它链接到的域和密码的强度。
现在有一个小问题。使用 Firefox 时,就像所有优秀的 Web 开发人员一样,当您访问该页面时,如果您单击该页面,它会弹出一个窗口,要求您更新已保存的控制面板用户密码。
我不确定为什么在任何地方都没有<form>,并且这些字段没有使用相同的name, class 或id。以下是典型字段的打印方式(注意:这只是 info 字段):
<div class="pwv_row_column_2">
<div class="pwv_user">%VAR1%</div>
<div class="pwv_pass">
<div class="pwv_eye"></div>
<div class="pwv_show">
<input type="password" value="%VAR2%" class="pwv_context" readonly="true">
</div>
<div class="pwv_hide">
<input type="text" value="%VAR2%" class="pwv_context" readonly="true">
</div>
</div>
</div>
然后使用下面的 jQuery 我在点击 Eye 图标时隐藏和显示密码:
$(document).ready(function() {
$('.pwv_eye').click(function() {
$(this).siblings('.pwv_hide').toggle();
$(this).siblings('.pwv_show').toggle();
});
});
我尝试在字段上使用autocomplete="off",但这并不能解决问题。如何阻止浏览器尝试更新已保存的信息?甚至尝试向他们添加随机的 name="" 和 id="" 看看是否有帮助:不。
【问题讨论】:
-
输入是
readonly,用户如何更改它们? -
用户没有更改它们,在远端有一个编辑按钮,您看不到它转到不同的页面,但此页面上的任何地方都没有使用任何表单。我只是在隐藏或显示时使用文本和密码输入字段来显示当前密码;为了阻止人们更改或删除它们,我添加了
readonly选项。 -
也许不要使用
type="password"。只有用户输入的表单字段才需要。
标签: jquery html firefox browser