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>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM