天天看點

JavaScript中幾種 擷取元素的方式

1.根據id擷取元素

document.getElementById("id屬性的值");

2.根據标簽名字擷取元素

document.getElementsByTagName("标簽的名字");

3.根據name屬性的值擷取元素

document.getElementsByName("name屬性的值");

4.根據類樣式的名字擷取元素

document.getElementsByClassName("類樣式的名字");

5.根據選擇器擷取元素

1.document.querySelector("選擇器");

2.document.querySelectorAll("選擇器");

0.碼仙勵志

強者征服今天,懦夫哀歎昨天,懶漢坐等明天

1.根據id擷取元素

document.getElementById("id屬性的值");

傳回值是一個元素對象

案例:點選按鈕彈框

    <body>

    <input type="button" value="彈框" id="btn">

    <script>

        //根據id屬性的值從文檔中擷取這個元素

        var btnobj = document.getElementById("btn");

       //為目前的這個按鈕元素(對象),注冊點選事件,添加事件處理函數(匿名函數)

        btnobj.onclick = function () {

            //響應做的事情

            alert("碼仙");

        };

    </script>

    </body>

2.根據标簽名字擷取元素

document.getElementsByTagName("标簽的名字");

傳回值是一個僞數組

案例:點選按鈕改變多個p标簽的文字内容

    <body>

    <input type="button" value="改變" id="btn">

    <div id="dv">

        <p>哈哈,我又變帥了</p>

        <p>哈哈,我又變帥了</p>

        <p>哈哈,我又變帥了</p>

        <p>哈哈,我又變帥了</p>

        <p>哈哈,我又變帥了</p>

    </div>

    <script>

        //根據id擷取按鈕,注冊點選事件,添加事件處理函數

        document.getElementById("btn").onclick = function () {

            //根據标簽名字擷取标簽

            var pObjs = document.getElementsByTagName("p");

            //var pObjs=document.getElementById("dv1").getElementsByTagName("p");

            //循環周遊這個數組

            for (var i = 0; i < pObjs.length; i++) {

                //每個p标簽,設定文字

                pObjs[i].innerText = "我們都是p";

            }

        };

    </script>

    </body>

3.根據name屬性的值擷取元素

document.getElementsByName("name屬性的值");

傳回值是一個僞數組

案例:案例:點選按鈕,改變所有name屬性值為name1的文本框中的value屬性值

    <body>

    <input type="button" value="顯示效果" id="btn"/><br/>

    <input type="text" value="您好" name="name1"/><br/>

    <input type="text" value="您好" name="name2"/><br/>

    <input type="text" value="您好" name="name1"/><br/>

    <input type="text" value="您好" name="name3"/><br/>

    <input type="text" value="您好" name="name1"/><br/>

    <input type="text" value="您好" name="name1"/><br/>

    <script>

        //點選按鈕,改變所有name屬性值為name1的文本框中的value屬性值

        document.getElementById("btn").onclick = function () {

            //通過name屬性值擷取元素-------表單的标簽

            var inputs = document.getElementsByName("name1");

            for (var i = 0; i < inputs.length; i++) {

                inputs[i].value = "我很好";

            }

        };

    </script>

    </body>

4.根據類樣式的名字擷取元素

document.getElementsByClassName("類樣式的名字");

傳回值是一個僞數組

案例:修改所有文本框的值

    <body>

    <input type="button" value="修改文本框的值" id="btn"/><br/>

    <input type="text" value="" class="text"/><br/>

    <input type="text" value="" class="text"/><br/>

    <input type="text" value="" class="text"/>

    <script>

        //根據id擷取按鈕,為按鈕注冊點選事件,添加事件處理函數

        document.getElementById("btn").onclick = function () {

            //擷取所有的文本框

            //根據類樣式的名字擷取元素

            var inputs = document.getElementsByClassName("text");

            for (var i = 0; i < inputs.length; i++) {

                inputs[i].value = "碼仙";

            }

        };

    </script>

    </body>

5.根據選擇器擷取元素

1.document.querySelector("選擇器");

傳回值是一個元素對象

案例:點選按鈕彈框

    <body>

    <input type="button" value="顯示效果1" id="btn"/>

    <input type="button" value="顯示效果2" class="btn"/>

    <script>

        //點選按鈕彈出對話框

        //根據選擇器的方式擷取元素

        var btnObj1 = document.querySelector("#btn");

        btnObj1.onclick = function () {

            alert("我變帥了");

        };

        var btnObj2 = document.querySelector(".btn");

        btnObj2.onclick = function () {

            alert("哈哈,我又變帥了");

        };

    </script>

    </body>

2.document.querySelectorAll("選擇器");

傳回值是一個僞數組

案例:修改所有文本框的值

    <body>

    <input type="button" value="修改文本框的值" id="btn"/><br/>

    <input type="text" value="" class="text"/><br/>

    <input type="text" value="" class="text"/><br/>

    <input type="text" value="" class="text"/>

    <script>

        document.getElementById("btn").onclick = function () {

            //根據選擇器的方式擷取元素

            var inputs = document.querySelectorAll(".text");

            for (var i = 0; i < inputs.length; i++) {

                inputs[i].value = "碼仙";

            }

        };

    </script>

    </body>

轉載于:https://www.cnblogs.com/klb561/p/10160425.html

繼續閱讀