Asp.Net 之 禁用TextBox的记忆功能

  IE提供了一个自动完成功能可以记忆我们的输入内容(如登录帐号等),方便下一次快速地录入类似资料。这确实是一个非常友好的功能,在操作时只需用鼠标双击文本框或输入前几个字符,系统会自动列出以前的录入历史供你选择,大大提高录入速度及准确性。相信大多数IE的用户都启用了这项功能。

  然而作为网站开发者来说,并不希望什么资料都记忆在用户的电脑上(如银行帐号和其它重要的帐号及密码),但是我们又不能要求用户禁用自动完成的功能。幸好IE5.0后为 INPUT type=password, INPUT type=text, FORM 等控件加入了一个 AUTOCOMPLETE 的属性,要禁止控件自动完成功能,只需把AUTOCOMPLETE设为off即可,如:

  A 整个表单禁止自动完成

<FORM method=post action="submit.asp" AUTOCOMPLETE="OFF">  

  B 禁止文本框自动完成

<input type="text" name="creditcard" maxlength="16" AUTOCOMPLETE="OFF">

  C 在脚本中禁止自动完成

function init(){ element.setAttribute("AutoComplete", "off");}  

  D 如果要禁止文本框使用输入法,可以把在它的样式中添加 ime-mode : disabled 即可,但是这样并不能禁止输入汉字,因为用户还是可

以通过复制粘贴输入汉字的,如:

<input type=text style="ime-mode: disabled ; " mce_style="ime-mode: disabled ; "> 

  微软的.NET PASSPORT 就是这样实现的,但是因该还会有其它的方法,因为在YAHOO 和 GMAIL的实现方法就不一样。

  TextBox控件有个看似很小但却常带来困扰的小“改良”,就是“自动完成”(AutoComplete)。何谓自动完成呢?也就是TextBox会记忆用户曾经输入过的文字,当下次再输入时就会自动提示相关字词,最常见的是用户登录网站时就会自动带出帐号密码。

  这个功能在最早被发明时大家觉得很方便很好用,但随着信息安全意识的加强,这个功能有时不但不讨人喜欢,反而有点令人厌恶,现在无论是在家中、网吧还是公司,多人共享一台计算机的机会很多,而也是由于TextBox的自动完成在作祟的缘故,他人要看你的E-mail甚至假借您的帐号登录网页并非难事,只要在TextBox中选取你的帐号后,密码通常会一并自动带出。

  如何解决呢,在ASP.NET 2.0的TextBox控件内置的 AutoCompleteType 属性可以轻易解决这个问题,只要将TextBox的AutoCompleteType设置为“Disable”后,自动完成提示便完全不会出现了。  

时间: 2024-10-05 06:47:30

Asp.Net 之 禁用TextBox的记忆功能的相关文章

c# winforms TextBox的记忆功能

c# winforms TextBox的记忆功能 1:在项目上点右键  sproperties-settings 添加项目 如 MyText  类型 String 2: 获取值:   string loginId = Properties.Settings.Default.MyText; 3:保存值:在Formclosing中 Properties.Settings.Default.MyText =  UserID.ToString(); Properties.Settings.Default.

浏览器自带记忆功能,使input颜色和字体丢失

input:-internal-autofill-selected { /*内置阴影填充 背景颜色*/ box-shadow: inset 0 0 0 1000px #253167! important; /*只有谷歌兼容 字体颜色*/ -webkit-text-fill-color: #fff !important; } 上述可以解决,, 可以禁用 input的记忆功能<input type="text"  autocomplete="off">, 原

[渣译文] 使用 MVC 5 的 EF6 Code First 入门 系列:为ASP.NET MVC应用程序使用高级功能

这是微软官方教程Getting Started with Entity Framework 6 Code First using MVC 5 系列的翻译,这里是第十二篇:为ASP.NET MVC应用程序使用高级功能 原文:Advanced Entity Framework 6 Scenarios for an MVC 5 Web Application 译文版权所有,谢绝全文转载--但您可以在您的网站上添加到该教程的链接. 在之前的教程中,您已经实现了继承.本教程引入了当你在使用实体框架Code

ASP.Net4.0中新增23项功能

这篇文章介绍Visual Studio 2010 (ASP.Net 4.0)的新功能. 1.代码片段(Code Snippets): 代码段是预先开发的代码模板,可以节省我们对有关语法思考的时间.在VS 2005和VS 2008中,已经有建立了很多代码段.不过,这些只适用于隐藏代码(code behind).在VS 2010中代码片段支持JScript,HTML以及asp.net标记.在下面画面,展示了JScript和HTML片段的快捷菜单. 在JS中: 在Html中 : 2.New Profi

Excel 2003-单元格输入中带记忆功能

最近有个同事问我,如何在Excel单元格输入中带记忆功能?其实很简单: 工具ó选项ó编辑ó将"记忆式键入"项选中ó确定: //附图[效果图]:

让你的javascript函数拥有记忆功能,降低全局变量的使用

考虑例如以下场景:假如我们须要在界面上画一个圆,初始的时候界面是空白的.当鼠标移动的时候,圆须要尾随鼠标移动.鼠标的当前位置就是圆心.我们的实现方案是:假设界面上还没有画圆,那么就新创建一个:假设已经存在,就直接更新其位置.这样可以避免先销毁.后创建的开销. var circle = null; function drawCircle(position) { if(circle == null) { circle = GUI.Create(position);//创建1个圆 } else { c

Extjs grid分页多选记忆功能

很多同事在用extjs grid做分页的时候,往往会想用grid的多选功能来实现导出Excel之类的功能(也就是所谓的多选记忆功能),但在选选择下一页的时候 上一页选中的已经清除 这是因为做分页的时候又向服务器请求了分页数据 以下解决方法是在工作中的碰到的.分享给大家共同学习一下. 1.首先定义一个保存选中记录的集合 2.定义选中记录的CheckboxModel 3.定义store(这个请参考) 监听beforeload 及load事件 4.在grid中引用sm

ASP.NET MVC应用程序实现下载功能

上次Insus.NET有在MVC应用程序实现了上传文件的功能<MVC应用程序显示上传的图片> http://www.cnblogs.com/insus/p/3597543.html 有上传就有下载.本篇博文是把上传的文件以列表的形式显示View视图上,然后用户可以点击下载. 为了解更多的内容,建议你先看上链接一篇. 在MVC应用程序的Entity目录下,找到和打开FileLibraryEntity.cs,添加一个返回DataTable的方法: #1写一个GetUploadFileByPrima

设置禁用恢复出厂设置功能--系统恢复、还原

方案 —设置禁用恢复出厂设置功能--系统恢复.还原 参考方案一: 禁用系统恢复 运行 reagentc /disable 可禁用恢复环境: 如果点击恢复-重置此电脑则会出现以下情况: 如果禁用高级启动,则可以通过以下方式: 1.禁用大容量存储,SD卡 通过设置注册表实现, HKEY_Local_Machine\\SYSTEM\\CurrentControlSet\\Services\\USBSTOR 设置键“Start“值”3“表示启用,“4“表示禁用 2.禁用光驱 通过设置注册表实现, HKE