在前端项目中经常有这样的需求!就是把密码输入表单内容变为星号!
有的同学会说简单!type=’password’ 不就得啦!
但是!当今浏览器解析时大多会把输入的内容变为“·”点,而不是星号!
这本来无伤大雅!但有的产品经理态度强硬!说“我就要星号!*
行!你说的算 写js呗!我引入了JQ 写起来也很简单!
<input id="a" type="text"/>
<script type="text/javascript" src="jquery-3.3.1.js"></script>
<script>
var str=""//存储表单真实密码
$("#a").keyup(function(){
value=$(this).val()//获取表单密码
if(value.length>=str.length){//当密码长度增加时由于前面的已经变成星号,所以截取后面输入的字符追加到str中
str+=value.substr(str.length,value.length-str.length)
}
else{//当密码长度减小时,判断减小后的长度,然后从真实密码中截取
str=str.substr(0,value.length)
}
$(this).val(value.replace(/./g,"*"))//变星星喽
console.log(str)
})
</script>
上面代码完全自写,亲测简单有效!欢迎复制粘贴!