如何将调整后的密码保存到浏览器中?

时间:2016-05-02 07:16:55

标签: javascript jquery passwords

在我的应用程序中,登录浏览器时要求我保存密码。 为了防止我使用html标签autocomplete =“off”,它对某些浏览器不起作用。

要获得更多步骤安全性 - 如果浏览器要求保存密码,则在浏览时保存密码时应更改密码。

点击登录时,我从字段中获取密码,然后使用javascript更改密码和虚拟密码。

代码:

function onLoginClick(){
       var passStr = $("#myPassword").val();
       $("#myPassword").val('dummyPassword');
}

但是在保存密码时,浏览器正在获取实际密码而不是虚拟密码。

1 个答案:

答案 0 :(得分:1)

我相信Chrome会跟踪每个输入的最后一个用户输入值。因此,简单地将其交换出来并不会覆盖它。你可能想要做的是打电话听submit事件,并在你的处理程序中调用事件的preventDefault函数。我不确定每个浏览器正在寻找什么来触发"想要保存此密码?"对话框,但我知道在提交标签中导航是其中之一。您是否尝试过以下方面的内容:

<form>
    <input name="username">
    <input type="password" name="textPass">
    <input type="hidden" name="hiddenPass">
</form>

使用js:

form.addEventListener('submit', function(e){
    if(hiddenPass.value.length === 0) {
        e.preventDefault();
        hiddenPass.value = textPass.value;
        textPass.value = '';
        window.setTimeout(function(){
            form.submit();
        });
    }
});

或者隐形密码字段怎么样?:

<input type="password" name="password" value="" style="display: none;">
<input type="password" name="realPassword">