簡體   English   中英

從Node獲取所有孩子

[英]Getting all children from Node

我將擁有一個腳本,該腳本將從HTML子樹中獲取所有文本類型的子級。 我寫了某事,但對任何節點都不行

$(document).ready(function () {
    var result;
    $.each($("li").contents(), function(i, v){
        if(v.nodeType == 3){
            result = result + " " + v.nodeValue;
        }
    });
    alert(result);
});

嘗試這個:

$(document).ready(function () {
    var result = "";
    $("li").each(function() {
       result += $(this).text();
    });
    alert(result);
});

您需要將result初始化為空字符串:

var result = '';

演示

如果不是,則將result初始化為undefined ,然后

undefined + 'someString' === 'undefinedsomeString'

在ES6中,我認為這更具可讀性:

var result = [].slice.call($("li").contents())
    .filter(v => v.nodeType == 3)
    .map(v => v.nodeValue)
    .join(' ');
alert(result);

在ES5中,它更詳細:

var result = [].slice.call($("li").contents())
    .filter(function(v){ return v.nodeType == 3; })
    .map(function(v){ return v.nodeValue; })
    .join(' ');
alert(result);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM