JavaScriptのライブラリを作成していますが、jQueryを使用することはできません。子要素のテキストの内容を持たないHTML要素のテキストコンテンツを取得しようとしています。JavaScript get textContent子どもを除き
innerTextとtextContentの両方の属性で必要な情報が得られないので、助けてください。
JavaScriptのライブラリを作成していますが、jQueryを使用することはできません。子要素のテキストの内容を持たないHTML要素のテキストコンテンツを取得しようとしています。JavaScript get textContent子どもを除き
innerTextとtextContentの両方の属性で必要な情報が得られないので、助けてください。
DOM APIをchildNodesおよびnodeTypeとして使用して解決できます。
var elChildNode = document.querySelector("#hello").childNodes;
var sChildTextSum = "";
elChildNode.forEach(function(value){
if(value.nodeType === Node.TEXT_NODE) {
console.log("Current textNode value is : ", value.nodeValue.trim());
sChildTextSum += value.nodeValue;
}
});
console.log("All text value of firstChild : ", sChildTextSum);
上記のサンプルコードを作成しました。
<span>...
を除く、以下の要素からAuthor's Name
を取得するには:
<div class="details__instructor">
Author's Name<span ng-show="job_title">, Entrepreneur</span>
</div>
使用childNodes[0]
を。例えば:
document.querySelector('div.details__instructor').childNodes[0]
結果がオブジェクトである:
"Author's Name"