首頁 > web前端 > js教程 > 如何動態讀取div的所有span?

如何動態讀取div的所有span?

王林
發布: 2023-09-02 18:37:02
轉載
1256 人瀏覽過

如何動態讀取div的所有span?

在建立網頁時,一個 HTML 元素可以包含多個巢狀的 HTML 元素。在某些情況下,開發人員可能需要讀取一個 HTML 元素的特定 HTML 元素。在我們的例子中,我們需要讀取 div 元素的所有 span 元素並提取它們的內容。

在本教程中,我們將學習使用 JavaScript 讀取 div 元素所有跨度的內容,並再次以格式化方式將其附加到網頁。

文法

使用者可以依照下列語法使用 JavaScript 動態讀取 div 元素的所有範圍。

var spans = div.getElementsByTagName("span");
for (var i = 0; i < spans.length; ++i) {
   output.innerHTML += spans[i].innerHTML + "<br>";
}
登入後複製

在上面的語法中,我們透過標籤名稱取得「span」元素,並一一讀取所有span元素。

範例 1

在下面的範例中,我們建立了包含「myDIv」id 的 div 元素。此外,我們添加了 5 個包含不同內容的 span 元素。

在 JavaScript 中,我們使用 div 元素的 id 來存取它。之後,我們透過標籤名稱存取所有 span 元素,它們是 div 元素的子元素。接下來,我們使用 for 迴圈對 span 元素陣列進行迭代,並取得每個 span 元素的內部 HTML。

在輸出中,我們可以看到span元素的內容。

<html>
<body>
    <h2> Reading <i> all the spans of a div element </i> dynamically using JavaScript </h2>
    <div id="myDiv">
        <span> First </span>
        <span> Second </span>
        <span> Third </span>
        <span> Fourth </span>
        <span> Fifth </span>
    </div>
    <br>
    <div id = "output"> </div>
    <script>
        var div = document.getElementById("myDiv");
        var spans = div.getElementsByTagName("span");
        var output = document.getElementById("output");
        for (var i = 0; i < spans.length; ++i) {
            output.innerHTML += spans[i].innerHTML + "<br>";
        }
    </script>
</html>

登入後複製

範例 2

在下面的範例中,我們建立了 id 等於「content」的 div 元素。 div 元素包含多個「

」、「」和「」元素作為隨機順序的子元素,但我們只提取 span 元素。

在 JavaScript 中,我們存取 div 元素和子 span 元素。之後,我們僅讀取 span 元素的內容並將其內容附加到清單中。

<html>
<body>
    <h2> Reading <i> all the spans of a div element </i> dynamically using JavaScript </h2>
    <div id = "content">
        <p> This is the first paragraph. </p>
        <p> This is the second paragraph. </p>
        <span> This is the first span. </span>
        <div> This is a div element. </div>
        <span> This is the second span. </span>
        <span> This is the third span. </span>
        <h2> This is a h2 element </h2>
        <p> This is the third paragraph. </p>
        <span> This is the fourth span. </span>
    </div>
    <br>
    <ul id = "output"> </ul>
    <script>
        var div = document.getElementById("content");
        var spans = div.getElementsByTagName("span");
        var output = document.getElementById("output");
        for (var i = 0; i < spans.length; i++) {
            var li = document.createElement("li");
            li.innerHTML = spans[i].innerHTML;
            output.appendChild(li);
        }
    </script>
</html>
登入後複製

範例 3

在此範例中,我們在 span 標籤中新增了水果名稱,並在 div 標籤中新增了其解釋。因此,父 div 包含 span 和 div 元素作為子元素。

在 JavaScript 中,我們使用「children」屬性來取得 div 元素的所有子元素。之後,我們迭代所有子元素。在 for 迴圈中,我們使用「tagName」屬性來檢查目前元素是否為「span」元素。如果是,我們讀取其內容並將其附加到清單中。否則,我們繼續迭代。

<html>
<body>
    <h3> Reading <i> all the spans of a div element </i> dynamically using JavaScript </h3>
    <div id = "fruits">
        <span> Apple </span>
        <div> Color: red </div>
        <span> Orange </span>
        <div> Color: orange </div>
        <span> Banana </span>
        <div> Color: yellow </div>
        <span> Watermelon </span>
        <div> Color: green </div>
    </div>
    <h3> Output: </h3>
    <ul id = "output"> </ul>
    <script>
        let fruits = document.getElementById("fruits");
        let children = fruits.children;
        let output = document.getElementById("output");
        for (let i = 0; i < children.length; i++) {
            if (children[i].tagName == "SPAN") {
                output.innerHTML += "<li>" + children[i].innerHTML + "</li>";
            }
        }
    </script>
</html>
登入後複製

結論

我們學會了使用 JavaScript 動態讀取 div 元素的所有 span 元素。在前兩個範例中,我們存取所有 span 元素,然後迭代它們。在第三個範例中,我們迭代 div 元素的所有子元素,並在迭代時識別 span 元素。

以上是如何動態讀取div的所有span?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板