2013-08-28 50 views
0

我正面临有关自动填写表格的问题。 其实我正在运行一个信托慈善网站,它从捐助者那里收集资金。防止自动填写表格数据

问题:

当我进入了一个捐赠一个原因,我想再次为同一个原因,但有不同的信用卡详细输入捐赠。 然后我很奇怪的形式,我需要输入明细卡相关的是保留了以前捐款的所有信息,所以一切都进入了。

我试过autocomplete="off"的形式和输入。

回答

1

尝试在ID或表单元素名称的开头或末尾添加唯一标识符。

可选地存在是这样的:

自动填充=“关闭”是不与XHTML过渡, 有效的标记这是一种常见DOCTYPE.Use此保持有效的标记 从

if (document.getElementsByTagName) { 

    var inputElements = document.getElementsByTagName(“input”); 

    for (i = 0; inputElements[i]; i++) { 

     if (inputElements[i].className && (inputElements[i].className.indexOf(“disableAutoComplete”) != -1)) { 

      inputElements[i].setAttribute(“autocomplete”, ”off”); 

     } 

    } 

} 

http://css-tricks.com/snippets/html/autocomplete-off/

+0

就像? 请任何例子.. –

+0

@John喜欢下面的例子 –

+0

嗯thankx ..多数民众赞成在一个很好的解决方案。但抱歉不能接受最好的答案.. –

1

重命名每个页面加载的输入。生成一个前缀,并将其放在窗体的隐藏字段中。

$prefix = date("U"); //lets use unix time for this. 

...

<input type="hidden" name="prefix" value="<?php echo $prefix; ?>"/> 
<input type="text" name="<?php echo $prefix; ?>_cardnumber" /> 

...

而对于

$_POST[$_POST['prefix'].'_cardnumber'] 
1

处理一下当如果这是谷歌Chrome浏览器则它实际上有一个特点,它忽略自动完成来自当前Web表单的设置,实际上将从它自己的“个人程序缓存”和人群中提取数据作为一种方便,为你的田野。它在识别地址字段时也会这样做。 Thomas Martin Klein的答案可能效果最好,但我之前没有测试过,所以Chrome可能足够聪明,可以识别您的算法。祝你好运!