把input初始值不写value

1.用<span>标签写,定位在input上,让它单击和input获焦上都消失。

比如制作一个最常见的,input初始值,一般以前,我都只是写在input的value里。但是某天开发说,这不行,会传值七七八八%……@剩下的只能意会不能言传了。所以,要把初始值单独写出来,于是我比较傻逼,就用<span>标签写,定位在input上,让它单击和input获焦上都消失。

一定要牢牢记住的单词。网上那堆,如果你看都不看就直接制作过来用的话,你就特么的是全天下最特么傻逼的人了!!我现在打字双手还在颤抖,实在无法原谅自己,那么微小的错误。对于一个懒人,又笨人。还是把正确的单词放在自己能想得到的地方吧。

previousSibling  查找前一节点。

nextSibling  查找下一节点。

在ie中即ie8-ie6。如果要查找的节点是一个内联元素即(<span>,<i>)等,则返回的是文本节点。

html

<label class="password">
	<p class="passText" onClick="CHECKON.hide(this,oldpwd)" id="oldPass">原密码</p>
        <input type="password" name="oldpwd" id="oldpwd"  onfocus="CHECKON.showHelpInfo(this);" class="text" autocomplete="off" />
</label>

css

.password{ position:relative; }
.passText{ position:absolute; left:5px; top:0px; color:#a9a9a9; font-size:14px;}

  

js。注意那个长长长长长长长的单词!!!!!再拼错就剁手。

var CHECKON={
  showHelpInfo:function(idTa){
	  var pve=(idTa.previousSibling.nodeType==1)?idTa.previousSibling:idTa.previousSibling.previousSibling;
	  pve.style.display='none'
    },   
  hide:function(classN,id2){
	 var idBox=document.getElementById(id2);
	 classN.style.display='none';
	 idBox.focus();
  }
}

2.用背景图片的方式,给input添加背景图片,当获焦时,让图片消失。

3.html5里有个最新属性,placeholder属性,它会自觉出现在input里,并以灰色呈现。但是只在input输入时才会消失。 But html5,你懂的,ie8啥的不支持。

以上还有一个问题,就是浏览器会把之前的已经输入的记录记着,当再次打开登录页面时,帐号密码就出自觉出现。是当然是好事。but,对于之前设置的span标签定位的方法来说,就会出现 重影。

如果用背景图,是基本能解决,但,ie7不行。

在head头中加上了如下代码,即清除掉之前缓存登录记录:
<meta   http-equiv= "Pragma"   content= "no-cache" /> 
<meta   http-equiv= "Cache-Control"   content= "no-cache" /> 
<meta   http-equiv= "Expires"   content= "0" /> 

原文地址:https://www.cnblogs.com/ihqn19/p/3094625.html