表单文本输入框默认值的自动清除和恢复 -- defaultValue/setAttribute/focus/blur
来源:互联网 发布:神作 知乎 编辑:程序博客网 时间:2024/04/30 09:03
表单的文本输入框有默认值时,当输入框聚焦时默认值自动清除,不输入任何值焦点离开输入框时恢复默认值(我把情况说明白了?),这种情况一般出现在搜索和填写表单的时候,下面是我不同时期处理这种事情的不同方法。
1)初始:见得最多最原始的方法,像一锅粥一样和html标签混合在一块,也许也有他的好处
<input type="text" name="yourname" value="用户名" onclick="if(this.value == '用户名'){this.value = '';}else {this.select();}" onblur="if(this.value == ''){this.value = '用户名';}" />
2)后来:工作中很多地方都要用到这个效果,于是脚本脱离出来,但是脚本和内容还不能完全脱离开来
<input type="text" name="yourname" id="kw" value="用户名" />
function init_input(id,val){
var ob = document.getElementById(id);
if(ob){
ob.onfocus = function(){
if(this.value==val){
this.value="";
}else {
this.select();
}
}
ob.onblur = function() {
if (this.value == "") {
this.value = val;
}
}
}
}
init_input("kw","用户名");
3)最后:最近无意中去到Jeff Starr的博客,于是照他的代码做了进一步改进,脚本和内容完全脱离,并且可以批量处理
<div id="wp">
<input type="text" name="yourname" value="用户名" />
<input type="text" name="email" value="email" />
</div>
function init_input(id){
var inp = document.getElementById(id).getElementsByTagName('input');
for(var i = 0; i < inp.length; i++) {
if(inp[i].type == 'text') {
inp[i].setAttribute("rel",inp[i].defaultValue)
inp[i].onfocus = function() {
if(this.value == this.getAttribute("rel")) {
this.value = "";
} else {
this.select();
}
}
inp[i].onblur = function() {
if(this.value == "") {
this.value = this.getAttribute("rel");
}
}
}
}
}
init_input("wp");
1)初始:见得最多最原始的方法,像一锅粥一样和html标签混合在一块,也许也有他的好处
<input type="text" name="yourname" value="用户名" onclick="if(this.value == '用户名'){this.value = '';}else {this.select();}" onblur="if(this.value == ''){this.value = '用户名';}" />
2)后来:工作中很多地方都要用到这个效果,于是脚本脱离出来,但是脚本和内容还不能完全脱离开来
<input type="text" name="yourname" id="kw" value="用户名" />
function init_input(id,val){
var ob = document.getElementById(id);
if(ob){
ob.onfocus = function(){
if(this.value==val){
this.value="";
}else {
this.select();
}
}
ob.onblur = function() {
if (this.value == "") {
this.value = val;
}
}
}
}
init_input("kw","用户名");
3)最后:最近无意中去到Jeff Starr的博客,于是照他的代码做了进一步改进,脚本和内容完全脱离,并且可以批量处理
<div id="wp">
<input type="text" name="yourname" value="用户名" />
<input type="text" name="email" value="email" />
</div>
function init_input(id){
var inp = document.getElementById(id).getElementsByTagName('input');
for(var i = 0; i < inp.length; i++) {
if(inp[i].type == 'text') {
inp[i].setAttribute("rel",inp[i].defaultValue)
inp[i].onfocus = function() {
if(this.value == this.getAttribute("rel")) {
this.value = "";
} else {
this.select();
}
}
inp[i].onblur = function() {
if(this.value == "") {
this.value = this.getAttribute("rel");
}
}
}
}
}
init_input("wp");
- 表单文本输入框默认值的自动清除和恢复 -- defaultValue/setAttribute/focus/blur
- 表单文本输入框默认值的自动清除和恢复
- 表单文本输入框默认值的自动清除和恢复
- 表单中的focus和blur的样式
- HTML DOM focus()和blur()方法 输入框鼠标指过自动消失鼠标离开显示 js
- 表单焦点: focus/blur
- 恢复输入框的默认值
- input的focus和blur事件
- jquery文本框的focus和blur事件
- 【jQuery】文本框的focus和blur事件
- 【JQuery】文本框的focus和blur事件
- focus和blur事件实现提示文本的显示与隐藏
- 使用focus() 和blur()
- 使用 focus() 和 blur()
- [js笔记] focus和blur事件之表单验证
- 获取文本输入框的默认值
- jQuery focus和blur事件
- jQuery focus和blur事件
- 如何通过自定义MessageFilter的方式利用按键方式操作控件滚动条[附源代码]
- 免费图片MOLO风格化网站
- Ken Rockwell的"摄影师的七级分类"
- 自动生成Makefile的全过程详解!
- C#实现的全国主要城市公交线路下载器
- 表单文本输入框默认值的自动清除和恢复 -- defaultValue/setAttribute/focus/blur
- C++ new、delete、free关系
- 基于Windows Media Player, 写自己的播放器【有源码,可下载整个工程】
- 旅游景点大全网站
- 什么是“面向对象编程”?用邓小平理论指导编程思想
- C#识别验证码
- 学习的点点滴滴
- C#文章采集浅析
- Tor Browser Bundle(Tor+Firefox)安装flash player插件