javascript – 在Firefox中禁用密码自动完成?

前端之家收集整理的这篇文章主要介绍了javascript – 在Firefox中禁用密码自动完成?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

最近Firefox开始忽略密码字段的autocomplete =“off”,现在允许用户一直保存密码.我们有成千上万用户使用的大型应用程序,根据法律,我们需要确保密码永远不会以明文形式保存在客户端计算机上.

有什么方法可以阻止Firefox保存这些密码吗?我们找到了Chrome的解决方法(它只保存了屏幕上的第一个密码字段,因此我们在真正的密码字段之前添加了一个隐藏的密码字段),但我们对Firefox没有任何好运.截至目前,我们唯一的选择是完全禁用Firefox支持.

是的,我意识到阻止用户保存密码很烦人,但我们别无选择……这是联邦法规强加给我们的要求.

最佳答案
这个问题在办公室引发了很多争论,但我们想出了一个解决方案.

使用按钮单击事件提交表单(而不是正常的提交按钮).然后填充隐藏字段,删除可见字段的值并提交. JSFIDDLE

点击事件样本:

$('#post').click(function(e) {
    var password = $("#password");
    var realPassword = $("#therealdeal");
    realPassword.val(password.val());
    password.val('');
    $('#form').submit();
});

看来,在提交事件中,浏览器将序列化表单并使用serlized对象值进行提交.这就是为什么你不能简单地做类似的事情

不工作的样本:

$('#form').submit(function(e) {
    var password = $("#password");
    var realPassword = $("#realpassword");
    realPassword.val(password.val());
    password.val('');
});

即使在真正的提交发生之前清除了dom上的值,它仍然从序列化的表单对象中读取.

在IE,Firefox和Chrome中进行了测试

猜你在找的HTML相关文章