Php 如何删除文本框中的自动完成

Php 如何删除文本框中的自动完成,php,html,Php,Html,我需要删除我页面中所有文本框中的“自动完成” 因此,我给出了 但是它不起作用,有人知道吗?自动完成,除非你正在用AJAX做一些疯狂的事情,它是一个客户端的东西,你不能总是像那样控制它 由于autocomplete的工作原理是缓存以前输入的特定输入文本名称,因此许多银行会在每次表单页面加载时随机生成输入文本名称,但会跟踪在隐藏输入元素的其他位置或服务器端生成的内容 所以不是 <input name="txt_username" id="txt_username" type="text" va

我需要删除我页面中所有文本框中的“自动完成” 因此,我给出了


但是它不起作用,有人知道吗?

自动完成,除非你正在用AJAX做一些疯狂的事情,它是一个客户端的东西,你不能总是像那样控制它

由于autocomplete的工作原理是缓存以前输入的特定输入文本名称,因此许多银行会在每次表单页面加载时随机生成输入文本名称,但会跟踪在隐藏输入元素的其他位置或服务器端生成的内容

所以不是

<input name="txt_username" id="txt_username" type="text" value="" autocomplete="off" />

可能是这样的

<input type="text" name="f6Lx571p" id="txt_username"/>
<input type="hidden" name="username_key" value="f6Lx571p" />

服务器端代码也相应地进行了调整。例如,PHP代码可能看起来像:

<?php
$user = $_POST['txt_username'];
...

您还可以尝试将该
自动完成属性放置在表单元素上

<form id="myForm" autocomplete="off">
  ...
</form>

...

<>这可能会使你的HTML无效,所以你可能想考虑用JavaScript动态添加这个属性。

< P>自动完成不能关闭,这是浏览器的东西。如果要关闭“自动完成”,请执行以下操作:

使用字段名和随机数启动会话:

session_start();
$_SESSION['strUsername'] = "username_" . mt_rand(0, 1000000);
现在使用此变量作为字段名称:

name="' . $_SESSION['strUsername'] . '" id="txt_username" type="text" value="" autocomplete="off" /></dd></dl>

现在,名称每次都是随机的,因此浏览器无法识别该字段,也不会自动完成。

自动完成无法关闭,这是来自浏览器的,但我认为这一定会有帮助:

如果自动完成来自您的浏览器,这可能很难禁用…它只会出现在crome或所有浏览器中,我知道是什么吗?你测试的浏览器是什么?这很好,但需要使用会话,请参阅我的答案以了解消除此问题的方法。我建议先尝试这些方法…我必须同意,你的答案是更好的方法+最简单的把戏。。在firefox上工作。。无法在其他浏览器上尝试。。。
name="' . $_SESSION['strUsername'] . '" id="txt_username" type="text" value="" autocomplete="off" /></dd></dl>
$username = $_POST[$_SESSION['strUsername']];