js利用变量实现显示密码与隐藏密码
按钮:btn
密码:psw
首先知道,点击一次按钮会使密码的类型转成文本类型,这个好实现,直接
btn.onclick = function () { psw.type = text; }
但是如何再点一次按钮使它变回隐藏状态呢?
思路:需要变回隐藏状态,那就需要知道它现在的状态是什么,现在是显示状态,那么可以通过if语句判断是否是显示状态,如果是,就写出点一次按钮变成隐藏状态的代码;如果是隐藏状态,就写出点一次按钮变成显示状态的代码
判断状态比较麻烦,所以我们可以把某个状态转换成一个简单的数字变量,让数字变量来帮助我们判断。设置一个flag,如果等于0,那么现在的状态是隐藏,需要把密码类型转换成text;如果等于1,就需要把类型转换成password
只有两种情况,所以每一次点击之后,都要重置flag变量的状态,这一次是隐藏,那么下一次就是显示了
完整代码如下:
<body> <input type="password" name="" id=""> <button>显示密码</button> <script> var psw = document.querySelector(input); var btn = document.querySelector(button); var flag = 0; btn.onclick = function () { // 用一个flag变量实现可以点击显示回去 if (flag == 0) { psw.type = text; flag = 1; btn.innerHTML = 隐藏密码; } else { psw.type = password; flag = 0; btn.innerHTML = 显示密码; } } </script> </body>