首先,我正在为JavaScript创建一个库,但我不能使用jQuery。我试图获取一个HTML元素的文本内容,而不包含其子元素的文本内容。
innerText和textContent属性都没有提供所需的内容,请帮助。
var mydiv = getElementByID("id");
function Get_text(element) {
var selected = element.cloneNode(true);
var text;
while (selected.firstChild) {
if (selected.firstChild.nodeType == 3) text = selected.firstChild.nodeValue;
selected.removeChild(selected.firstChild);
}
return text;
}
Get_text(mydiv);
从以下元素(不包括
<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"
更新:答案被否决,没有任何评论。在生产中使用之前,确定该方法的有效性。
您可以使用DOMAPI作为子节点和节点类型来解决这个问题。
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);
我创建了一个示例代码,如上所述。
https://jsfiddle.net/nigayo/p7t9bdc3/
我有以下的html代码,我需要console.log只有航运。尝试了一些方法,但似乎无法奏效。我试着先选择它的孩子,然后打印出它的父母的文本内容-不行...我可以删除它的孩子,打印出剩下的东西,但我做不到。 有什么建议吗? 谢谢你的帮助 我试过这个: 我想得到发货,但我仍然得到图例元素的所有文本内容
使用Python 3。 假设: 如果我这样做: elem.text包含"文本其他" 如果我这样做:
问题内容: This is some text 获得“这是一些”并非易事。例如,返回“ This is some text”: 通常,如何获得特定元素的文本而不包含其子元素的文本? (我在下面提供了一个答案,但是如果有人想出一个不太丑陋的解决方案,它将让问题悬而未决)。 问题答案: 这是一个常规解决方案: 传递给函数的元素可以是从方法中获得的东西(即它可以是一个对象)。 或者,如果您没有jQuer
我想在像这样的文本中插入()并将它们放入数组中,但里面可能有一些嵌套的括号。 文本: 应该这样处理: 我怎么能这么做?
问题内容: 如果我运行带有子句的查询,它似乎排除了结束值。 例如: 从‘2011-01-01’到‘2011-01-30’的所有结果;跳过“ 2011-01-31” 所在的记录。谁能解释这个查询的行为方式,以及如何修改它以包含“ 2011-01-31” 所在的记录?(由于用户选择了结束日期,因此未在结束日期前加上1。) 问题答案: 该字段可能具有时间成分。 截断它:
在Javascript中,我希望得到一个字符串,表示两个括号之间的所有文本,即使该字符串包含更多的括号。 其工作如下: "(a)(b)(c)"。匹配(某物); [“a”、“b”、“c”] 或者 “a” “((a)(b)(c))”。匹配(某物); (a)(b)(c)