操作元素--表单元素

2020-09-13  本文已影响0人  潘肚饿兵哥哥

\color{rgba(254, 67, 101, .8)}{表单元素的属性操作:}

利用DOM可以操作如下表单元素的属性

type value checked selected disable

\color{rgba(254, 67, 101, .8)}{代码验证:}

    <button>按钮</button>
    <input type="text" value="输入内容">
    <script>
        //1.获取元素
        var btn = document.querySelector('button');
        var input = document.querySelector('input');

        //2.注册事件 处理程序
        btn.onclick = function() {
            //input.innerHTML = '点击';这个是普通盒子,比如div标签里面的内容用他修改,表单元素用它不起作用
            //表单里的值 文字内容是通过 value来修改的
            input.value = '被点击了';
            //如果想要某个表单被禁用,不能再点击,使用disable就可以了 禁用按钮
            btn.disabled = true;
            //这个写法也可以,当前的(函数,btn,按钮)被禁用
            //this指向的是时间函数的调用者btn
            this.disabled = true;
        }
    </script>

\color{rgba(254, 67, 101, .8)}{value:点击按钮后更改文字}

image.png image.png

\color{rgba(254, 67, 101, .8)}{disable:点击按钮后禁用按钮}

image.png

\color{rgba(254, 67, 101, .8)}{使用函数的this指向当前按钮也是一样的}

image.png

\color{rgba(254, 67, 101, .8)}{仿京东显示隐藏密码明文案例:}

点击按钮将密码切换为文本框,并可以查看密码明文

分析:
1.点击眼睛按钮,把密码框类型改为文本框就可以看见里面的密码

2.一个按钮有两个状态,点击一次,切换为文本框,继续点击一次切换为密码框

3.判断方法:利用一个flag变量,来判断flag的值,如果是1就切换为文本框,flag设置为0,如果是0就设置为密码框,flag设置为1

4.只要是一个按钮需要点多次,都可以用这个办法来做

\color{rgba(254, 67, 101, .8)}{代码实现:}

    <style>
        .box {
            position: relative;
            width: 400px;
            border-bottom: 1px solid #ccc;
            margin: 100px auto;
        }
        
        .box input {
            width: 370px;
            height: 30px;
            border: 0;
            outline: none;
        }
        
        .box img {
            position: absolute;
            /*边距可以在浏览器中调试尺寸*/
            top: 2px;
            right: 2px;
            width: 24px;
        }
    </style>
</head>

<body>
    <div class="box">
        <label for="">
            <img src="images/close.png" alt="" id="eye">
        </label>
        <input type="password" name="" id="pwd">
    </div>

    <script>
        //1.获取元素(1)点击眼睛显示隐藏密码,所以眼元素需要获取(2)点击眼睛之后,input会发生变化,所以input也要获取
        var eye = document.getElementById('eye');
        var pwd = document.getElementById('pwd');

        //注册事件(绑定事件) 处理程序==>点击图片,文本里input发生变化
        //点击图片,文本框input的password属性变成text
        //设置flag,如果是0就显示文本框,并且把flag改成1,如果是1就显示密码框,并把flag改成0,并且同时眼睛图标也要变
        //这里的eye.src也可以写成this.src
        //如果不用flag,也可以用if判断pwd.type = 'text';如果是,就显示睁眼图片
        var flag = 0;
        eye.onclick = function() {
            if (flag == 0) {
                pwd.type = 'text';
                eye.src = 'images/open.png';
                flag = 1;
            } else {
                pwd.type = 'password';
                eye.src = 'images/close.png';
                flag = 0;
            }
        }
    </script>
image.png image.png
上一篇 下一篇

猜你喜欢

热点阅读