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”后,自动完成提示便完全不会出现了。
Asp.Net 之 禁用TextBox的记忆功能的更多相关文章
- c# winforms TextBox的记忆功能
c# winforms TextBox的记忆功能 1:在项目上点右键 sproperties-settings 添加项目 如 MyText 类型 String 2: 获取值: string l ...
- 浏览器自带记忆功能,使input颜色和字体丢失
方法一 : 会有视觉上颜色的变化input:-internal-autofill-selected { /*内置阴影填充 背景颜色*/ box-shadow: inset 0 0 0 1000px # ...
- 为ASP.NET MVC应用程序使用高级功能
为ASP.NET MVC应用程序使用高级功能 这是微软官方教程Getting Started with Entity Framework 6 Code First using MVC 5 系列的翻译, ...
- ASP.Net4.0中新增23项功能
这篇文章介绍Visual Studio 2010 (ASP.Net 4.0)的新功能. 1.代码片段(Code Snippets): 代码段是预先开发的代码模板,可以节省我们对有关语法思考的时间.在V ...
- [翻译] ASP.NET Core 3.0 的新增功能
ASP.NET Core 3.0 的新增功能 全文翻译自微软官方文档英文版 What's new in ASP.NET Core 3.0 本文重点介绍了 ASP.NET Core 3.0 中最重要的更 ...
- 【验证】C# dataSource 的记忆功能
做项目时遇到的问题:dataSource被ComboBox引用过一次,会记忆最后一次选中的值,然后下一次再用时这个值会直接呈现在ComboBox中. 为验证是dataSource还是ComboBox自 ...
- 让你的javascript函数拥有记忆功能,降低全局变量的使用
考虑例如以下场景:假如我们须要在界面上画一个圆,初始的时候界面是空白的.当鼠标移动的时候,圆须要尾随鼠标移动.鼠标的当前位置就是圆心.我们的实现方案是:假设界面上还没有画圆,那么就新创建一个:假设已经 ...
- Extjs grid分页多选记忆功能
很多同事在用extjs grid做分页的时候,往往会想用grid的多选功能来实现导出Excel之类的功能(也就是所谓的多选记忆功能),但在选选择下一页的时候 上一页选中的已经清除 这是因为做分页的时候 ...
- ASP.NET MVC应用程序实现下载功能
ASP.NET MVC应用程序实现下载功能 上次Insus.NET有在MVC应用程序实现了上传文件的功能<MVC应用程序显示上传的图片> http://www.cnblogs.com/in ...
随机推荐
- Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(5) SimpleDateFormat
本章介绍SimpleDateFormat. SimpleDateFormat 介绍 SimpleDateFormat 是一个格式化Date 以及 解析日期字符串 的工具.它的最常用途是,能够按照指定的 ...
- div与span区别及用法
DIV与SPAN区别及div与san用法篇 接下来了解在div+css开发的时候在html网页制作,特别是标签运用中div和span的区别及用法.新手在使用web标准(div css)开发网页的时候, ...
- android iOS 编码问题害死人!
android 与后端服务器进行通信时,默认使用的编码格式是asi. 而iOS与后端通信时,获取的数据到iOS端默认被utf-8进行编码.所以,我们常常出现android能够从服务器端获取到数据,但是 ...
- 缩放到被选择的部分: ICommand Cmd = new ControlsZoomToSelectedCommandClass();
AddItem("esriControls.ControlsZoomToSelectedCommand"); //ICommand Cmd = new ControlsZoomTo ...
- python测试开发django-12.models设置主键primary_key
前言 django的models新增数据库表时,如果不设置主键,会默认新增一个id为主键,如果我们想自己设置一个字段为主键,需加个参数primary_key=True 默认id主键 新增一张用户表,表 ...
- 算法java实现--动态规划--电路布线问题
/* * dianlubuxian.java * Version 1.0.0 * Created on 2017年11月30日 * Copyright ReYo.Cn */ package reyo. ...
- 我们的生活第二季/全集This Is Us迅雷下载
NBC剧集<我们这一天>宣布一次性续订2.3季,这部Dan Fogelman打造的大热剧是这个秋季档收视人数第二的广播网剧情剧.新续订的两季还是每季18集. NBC的叫好叫座剧<我们 ...
- Git项目的初始化
快速设置— 如果你知道该怎么操作,直接使用下面的地址 git@github.com:username/myproject.git 我们强烈建议所有的git仓库都有一个README, LICENSE, ...
- 【转】你真的懂select Socket模型吗?
转自:http://www.cppblog.com/xvsdf100/archive/2013/12/10/204689.html 只要接触过c/c++网路编程人都可能会知道select io ...
- 不知不觉vs2012 update 4出来了
今天早上起来原来看新闻说VISUAL STUIDO 2013 正式发布的日期是11月13日,今天打开微软VS2013下载页面,发现没有任何迹象,在浏览里面的新闻的时候发现了VS2012 UPDATA ...