我正在寻找一些解决办法,以禁用在填写完表单后在Web浏览器中保存凭据的功能。我已经找到了几个解决方案,但其中没有一个能在所有浏览器中都工作(所有解决方案都比较老,作者是在旧版浏览器中测试这些“技巧”的)。我已经在Chrome,FF,Opera和IE(当前版本)上进行了测试。在大多数情况下只有FF存在问题,它总是想要保存凭据。有人可以帮我吗?
以下是一些适用于除FF之外所有浏览器的解决方案。
<form action="test.php" method="post" autocomplete="off">
Username:
<input type="text" name="username" autocomplete="off" readonly
onfocus="this.removeAttribute('readonly');" >
Password:
<input type="password" name="password" autocomplete="off" readonly
onfocus="this.removeAttribute('readonly');" >
<input type="submit" value="Login">
</form> //works for Chrome, IE, Opera; doesn't work FF.
2.)
<form action="test.php" method="post" autocomplete="off">
<div style="display:none">
<input type="password" tabindex="-1"/>
</div>
Username:
<input type="text" name="username" placeholder="username"/>
Password:
<input type="password" name="password" placeholder="password"/>
<input type="submit" value="Login">
</form> //works for Chrome, IE, Opera; doesn't work FF.
3.)
<form action='test.php' class='login-form' autocomplete='off'>
Username:
<input type='user' name='username'>
<input type='hidden' name='user'>
Password:
<input type='password' name='password'>
<input type='hidden' name='password'>
</form> //works for Chrome, IE, Opera; doesn't work FF.
4.)
<form action="test.php" method="post" autocomplete="off">
Username:
<input type="text" name="username" autocomplete="off" readonly onfocus="this.removeAttribute('readonly');"
onfocusout="this.setAttribute('readonly','readonly');" >
Password:
<input type="password" name="password" autocomplete="off" readonly onfocus="this.removeAttribute('readonly');"
onfocusout="this.setAttribute('readonly','readonly');" >
<input type="submit" value="Login">
</form> //works for Chrome, IE, Opera; doesn't work FF.
5.)
Username:
<input type="text" id="username" name="username"/>
Password:
<input type="password" id="password" name="password"/>
<form id="theForm" action="test.php" method="post">
<input type="hidden" id="hiddenUsername" name="username"/>
<input type="hidden" id="hiddenPassword" name="password"/>
<input type="submit" value="Login"/>
</form>
<script type="text/javascript" language="JavaScript">
$("#theForm").submit(function() {
$("#hiddenUsername").val($("#username").val());
$("#hiddenPassword").val($("#password").val());
});
$("#username,#password").keypress(function(e) {
if (e.which == 13) {
$("#theForm").submit();
}
});
</script>
<input type="text" id="password" style="-webkit-text-security: disc;"/>
- lkip912