在 HTML 表单中键入时,Firefox 或 Internet Explorer 等浏览器会存储这些值,有时会悄悄地存储这些值。因此,当输入另一个网络表单时,浏览器会巧妙地建议相同的信息。显示下拉列表的另一种方法是双击空文本框。
在电子商务网站上,客户键入信用卡号和其他敏感信息。如何避免或阻止浏览器存储敏感信息?
另一个担心是存储的表单数据被篡改(例如恶意软件)。然后客户可以选择这些受污染的数据并破坏该站点。
尝试使用属性autocomplete="off"
它应该适用于单个输入元素:
<input type="text" autocomplete="off" name="text1" />
或整个表格:
<form name="form1" id="form1" method="post" autocomplete="off"
action="http://www.example.com/action">
[...]
</form>
特别是对于ASP .NET,您可以像这样设置它:
WebForms 表单:
<form id="Form1" method="post" runat="server" autocomplete="off">
文本框:
<asp:TextBox Runat="server" ID="Textbox1" autocomplete="off"></asp:TextBox>
或在运行时:
Textbox1.Attributes.Add("autocomplete", "off");
当您存储用户名、信用卡号等数据时,最好对公共计算机使用 autocomplete="off"。
因此,如果您构建一个 Intranet 系统,则可以这样做。
正如其他人所说,答案是autocomple="off"
但是我认为值得说明为什么在某些情况下使用它是一个好主意,因为对此的一些答案和重复的问题表明最好不要关闭。
停止浏览器存储信用卡号码不应该留给用户。太多的用户甚至不会意识到这是一个问题。
在信用卡安全码字段上将其关闭尤为重要。正如本页所述
“永远不要存储安全码......它的价值取决于提供它的唯一方法是从实体信用卡中读取它的假设,证明提供它的人实际上持有卡。”
问题是,如果它是公共计算机(网吧、图书馆等),那么其他用户很容易窃取您的卡详细信息,甚至在您自己的计算机上,恶意网站也可能窃取自动完成数据。
您可以输入输入字段:
autocomplete="off"
作为属性。
话虽这么说:不要这样做。
从可用性的角度来看,这是一个糟糕的主意。特别是如果有字段验证。没有什么比重新输入表格的某些部分更烦人的了,因为您必须更正一个完全不相关的表格。大多数用户喜欢他们不必重新输入信用卡号、姓名、电子邮件地址等这一事实。
通过关闭这些功能,你会惹恼更多的用户而不是你帮助的。
归根结底,安全是用户的问题和他们的特权。绝大多数人使用个人或工作 PC,因此可以缓存此类信息。正确配置的公共终端将在用户注销时清除表单数据。
那么你到底在帮助谁?
<input autocomplete="new-password">
这适用于“关闭”不适用的地方。