javascript自动恢复文本框点击清除后的默认文本


Posted in Javascript onJanuary 12, 2016

本文实例介绍了点击文本框清除默认文本离开再恢复的js实例代码,分享给大家供大家参考,具体内容如下

相关知识:

1、onclick事件的定义和用法:
当点击对象的时候会触发此事件。
浏览器支持:
1)、IE浏览器支持此事件。
2)、火狐浏览器支持此事件。
3)、Opera浏览器支持此事件。
4)、谷歌浏览器支持此事件。
5)、safria浏览器支持此事件。
实例代码:

<html>
<head>
<meta charset="gb2312"/>
<title>三水点靠木</title>
<style type="text/css">
div{
 width:100px;
 height:100px;
 background-color:red;
}
</style>
<script type="text/javascript">
window.onload=function(){
 var mydiv=document.getElementById("mydiv");
 mydiv.onclick=function(){
 mydiv.style.backgroundColor="green";
 }
}
</script>
</head>
<body>
 <div id="mydiv"></div>
</body>
</html>

以上代码为div注册onclick事件处理函数,当点击div的时候就会执行此处理函数将div的背景颜色设置为绿色。

2、onblur事件的定义和用法:
当指定对象失去焦点时就会触发此事件。
实例代码:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>三水点靠木</title>
<style type="text/css">
.mytest{
 background-color:green;
}
</style>
<script type="text/javascript">
window.onload=function(){
 var username=document.getElementById("username");
 username.focus();
 username.onblur=function(){
 username.style.backgroundColor="green";
 }
}
</script>
</head>
<body>
<input type="text" name="username" id="username" />
</body>
</html>

以上代码为input元素的onblur事件绑定事件处理函数,当input元素失去焦点的时候,能够将背景颜色设置为绿色。

接下来是重中之重:点击文本框清除默认文本离开再恢复

很多网站的需要填写的文本框在默认状态下都会给出一个默认的提示语言,当鼠标点击此文本框的时候能够将里面的默认文本清除,当删除输入的文本且焦点离开文本框的时候再将默认的文本写入文本框。
代码如下:

<html>
<head>
<meta charset="gb2312">
<title>点击文本框清除默认值</title>
<script type="text/javascript"> 
window.onload=function()
{
 var username=document.getElementById("username");
 username.onclick=function()
 {
 if(username.value=="请输入您的姓名")
 {
 username.value="";
 this.focus();
 }
 }
 username.onblur=function()
 {
 if(username.value=="")
 {
 username.value="请输入您的姓名";
 }
 }
}
</script>
</head>
<body>
<input type="text" value="请输入您的姓名" id="username" />
</body>
</html>

以上代码实现了我们的要求,当点击文本框的时候能够清除文本框中的内容,如果文本框没有输入任何内容,这个时候鼠标焦点离开文本框的时候,会将文本框的值恢复到默认状态。不过如果密码框肯恩有点麻烦,因为密码框并非显示的明文,解决方案可以参考如何实现在密码框如出现提示语下段内容。

如何实现在密码框如出现提示语:
有时候我们需要在登陆表单有一些提示语言,比如“请输入用户民”和“请输入密码”等语言,至于用户名好说,但是在密码框中出现“请输入密码”这样的语言就有点麻烦了,因为在密码框输入的内容不会以明码显示。如果动态的控制type属性的话就有兼容性问题,如果input已经存在于页面中的话,在IE8和IE8以下浏览器中,type属性是只读的。所以就得想其他办法,代码如下:

<html> 
<head> 
<meta charset="gb2312"> 
<title三水点靠木</title>
<style type="text/css">
#tx{
 width:100px;
}
#pwd{
 display:none;
 width:100px;
}
</style>
<script type="text/javascript"> 
window.onload=function(){
 var tx=document.getElementById("tx");
 var pwd=document.getElementById("pwd"); 
 tx.onfocus=function(){ 
 if(this.value!="密码") 
 return; 
 this.style.display="none"; 
 pwd.style.display="block"; 
 pwd.value=""; 
 pwd.focus(); 
 } 
 pwd.onblur=function(){ 
 if(this.value!=""){
  return; 
 } 
 this.style.display="none"; 
 tx.style.display=""; 
 tx.value="密码"; 
 } 
}
</script> 
</head> 
<body> 
<input type="text" value="密码" id="tx"/> 
<input type="password" id="pwd" /> 
</body> 
</html>

以上代码实现了我们的要求,可以出现明码的提示,当输入密码的时候就是以密码方式输入。
实现的原理非常的简单,在默认状态以type="text"文本框显示,当点击文本框的时候,以type="password"密码框显示,原来显示的文本框隐藏,也就是说做了一个替换而已。

以上就是本文的全部内容,希望对大家的学习javascript程序设计有所帮助。

Javascript 相关文章推荐
javascript闭包的高级使用方法实例
Jul 04 Javascript
jquery 模板的应用示例
Nov 12 Javascript
Javascript 实现复制(Copy)动作方法大全
Jun 20 Javascript
用javascript读取xml文件读取节点数据
Aug 12 Javascript
判断字符串的长度(优化版)中文占两个字符
Oct 30 Javascript
jQuery Mobile中的button按钮组件基础使用教程
May 23 Javascript
JS实现的自定义水平滚动字体插件完整实例
Jun 17 Javascript
JavaScript制作简单分页插件
Sep 11 Javascript
React Native react-navigation 导航使用详解
Dec 01 Javascript
高性能的javascript之加载顺序与执行原理篇
Jan 14 Javascript
Angularjs之如何在跨域请求中传输Cookie的方法
Jun 01 Javascript
webpack项目使用eslint建立代码规范实现
May 16 Javascript
JS清除文本框内容离开在恢复及鼠标离开文本框时触发js的方法
Jan 12 #Javascript
jquery模拟实现鼠标指针停止运动事件
Jan 12 #Javascript
js实现字符串和数组之间相互转换操作
Jan 12 #Javascript
js右下角弹出提示框示例代码
Jan 12 #Javascript
jquery插件EasyUI中form表单提交实例分享
Jan 11 #Javascript
详解WordPress开发中get_current_screen()函数的使用
Jan 11 #Javascript
提升jQuery的性能需要做好七件事
Jan 11 #Javascript
You might like
浅析SVN常见问题及解决方法
2013/06/21 PHP
crontab无法执行php的解决方法
2016/01/25 PHP
thinkPHP5框架自定义验证器实现方法分析
2018/06/11 PHP
PHP超全局变量实现原理及代码解析
2020/09/01 PHP
js函数的延迟加载实现代码
2012/10/11 Javascript
JS给Textarea文本框添加行号的方法
2015/08/20 Javascript
JavaScript中使用数组方法汇总
2016/02/16 Javascript
Bootstrap页面标题Page Header的实现方法
2017/03/22 Javascript
JS实现中文汉字按拼音排序的方法
2017/10/09 Javascript
JS实现点击循环切换显示内容的方法
2017/10/19 Javascript
Nodejs下使用gm圆形裁剪并合成图片的示例
2018/02/22 NodeJs
jQuery轮播图实例详解
2018/08/15 jQuery
浅析Proxy可以优化vue的数据监听机制问题及实现思路
2018/11/29 Javascript
vue--vuex详解
2019/04/15 Javascript
vue-cli配置flexible过程详解
2019/07/04 Javascript
简单了解Vue + ElementUI后台管理模板
2020/04/07 Javascript
Vue初始化中的选项合并之initInternalComponent详解
2020/06/11 Javascript
elementui更改el-dialog关闭按钮的图标d的示例代码
2020/08/04 Javascript
[05:31]干嘛呢兄弟!DOTA2 TI9语音轮盘部分出处
2019/05/14 DOTA
python操作ssh实现服务器日志下载的方法
2015/06/03 Python
python学习之第三方包安装方法(两种方法)
2015/07/30 Python
Python正则简单实例分析
2017/03/21 Python
解决Ubuntu pip 安装 mysql-python包出错的问题
2018/06/11 Python
python图形用户接口实例详解
2019/12/16 Python
Python.append()与Python.expand()用法详解
2019/12/18 Python
pytorch实现建立自己的数据集(以mnist为例)
2020/01/18 Python
python实现ip地址的包含关系判断
2020/02/07 Python
python变量的作用域是什么
2020/05/26 Python
Python实现简单猜数字游戏
2021/02/03 Python
CSS3实现苹果手机解锁的字体闪亮效果示例
2021/01/05 HTML / CSS
很酷的HTML5电子书翻页动画特效
2016/02/25 HTML / CSS
信用卡结清证明怎么写
2014/09/13 职场文书
活动简报范文
2015/07/22 职场文书
2016年春季开学典礼新闻稿
2015/11/25 职场文书
最新的离婚协议书范本!
2019/07/02 职场文书
MySQL查看表和清空表的常用命令总结
2021/05/26 MySQL