今天碰见了一个问题,要清除下图中的下拉的值
(浏览器自动记录之前输入的值)
当满足以下2个条件时,浏览器会自动记录输入过的值,当用户再次输入的时候就能自动完成;
1、input标签在form标签下;
2、点击了此form标签下的submit按钮;
具体的表现形式如下图,当我输入用户名的时候,浏览器会自动显示我之前输入过的用户名
通常我们会在form表单上加入autocomplete="off" 或者 在输入框中加入autocomplete="off"
解决这个情况的方法有两种
一、是为input标签添加autocomplete属性并设为off
<input class="text" autocomplete="off" type="text" name="username" value="">
二、是在form表单上添加autocomplete属性并设为off
<form method="post" action="" name="login" autocomplete="off">
</form>
顺便介绍下autocomplete;
autocomplete是HTML5 中的新属性它规定表单是否应该启用自动完成功能。自动完成允许浏览器预测对字段的输入。当用户在字段开始键入时,浏览器基于之前键入过的值,应该显示出在字段中填写的选项。
值 | 描述 |
on | 默认。规定启用自动完成功能。 |
off | 规定禁用自动完成功能。 |
三、但是有一种情况例外,就是表单中有input[type="password"],点击保存密码后,在Chrome浏览器还是自动填充了用户名和密码的输入框;为了统一样式,我们需要就对Chrome的问题经行单独处理。
解决方案如下:
可以在不需要默认填写的input框中设置 autocomplete="new-password"
网上没有找到对其详细解释,但是发现163网易免费邮的邮箱帐号登录是这么用的,
所以就借鉴借鉴咯,测试之后也是可以解决问题的,也是最简单的解决办法,网易给您点个赞!