我们知道通过浏览器自带的innerHTML属性能够获取节点的所包含的字符串的值,比如有如下节点:
<div id="test"><strong>i'm
strong</strong></div>
通过
var obj=document.getElementById("test");
alert(obj.innerHTML);//返回的值是<strong>i'm strong</strong>
如果我想得到节点的文本值,也就不包括标签以为的字符串,怎么办呢。这里的文本值是:i'm strong
//非Mozilla浏览器:
obj.innerText;
//其他的浏览器
obj.firstChild.nodeValue;
先提供一个通用的方法来解决兼容问题:
完整代码如下:
代码
<html>
<head>
<title>title</title>
</head>
<body>
<div id="test"><strong>i'm strong</strong></div>
<script type="text/javascript">
var obj=document.getElementById("test");
//兼容浏览器获取节点文本的方法
function text(e)
{
var t="";
//如果传入的是元素,则继续遍历其子元素
//否则假定它是一个数组
e=e.childNodes||e;
//遍历所有子节点
for(var j=0;j<e.length;j++){
//如果不是元素,追加其文本值
//否则,递归遍历所有元素的子节点
t+=e[j].nodeType!=1?
e[j].nodeValue:text(e[j].childNodes);
}
//返回区配的文本
return t;
}
alert(text(obj))
</script>
</body>
</html>
分享到:
相关推荐
获取文本节点值
在jQuery中,获取节点文本最直接的方法是使用`.text()`方法。这个方法可以直接获取或设置选定元素的纯文本内容,包括其子元素的文本。当`.text()`用于获取内容时,它会将选定元素下的所有文本节点以及子元素中的文本...
// 获取文本节点 var textNode = document.createTextNode("Hello World"); console.log(textNode.nodeType); // 输出:3 console.log(textNode.nodeName); // 输出:"#text" console.log(textNode.nodeValue); // ...
本文将探讨如何编写兼容IE和Firefox的JavaScript代码来获取节点的文本值。 首先,`innerHTML`属性是许多浏览器支持的一个特性,可以用来获取或设置一个元素内所有子节点的HTML内容。例如,对于以下HTML结构: ```...
以下是对“JavaScript获取HTML DOM节点元素的方法的总结”的详细阐述,旨在帮助开发者更好地理解和应用DOM操作。 ### 一、通过`document`对象获取DOM节点 #### 1. `document.getElementById(elementId)` 这个方法...
本文主要介绍如何使用JavaScript获取指定节点的父节点、子节点以及相邻节点的方法。 首先,我们可以从`document`节点开始获取元素。`document.getElementById()`是最常用的方法,通过元素的ID来精确获取元素。但...
例如,使用`document.getElementById()`、`document.querySelector()`或`document.createElement()`等方法来获取或创建DOM节点,然后用`innerHTML`或`innerText`属性修改文本内容。 3. **事件监听与处理**: 编辑...
1. **获取属性值**:使用`getAttribute()`方法可以获取节点的属性值。例如,`var attrValue = document.getElementById('myElement').getAttribute('myAttr');` 2. **设置属性值**:使用`setAttribute()`方法可以...
在IT行业中,文本框获取节点是一个常见的操作,特别是在网页开发和前端编程中。文本框,通常指的是HTML中的`<input type="text">`元素或`<textarea>`元素,它们用于用户输入文本。获取这些节点是构建交互式网页、...
获取选择文本 通过 window.getSelection() 即可获得一个 Selection 对象,再利用 .toString() 即可获得选择的文本。 锚节点与焦节点 在 Selection 对象中还保存了两个重要信息,anchorNode 和 focusNode,分别代表...
本文总结了使用JavaScript读取文本节点的方法,包括直接使用`getElementById`和`getElementsByTagName`获取元素节点,并通过`childNodes`属性来访问和遍历子节点,进而获取其中的文本节点。掌握这些基本操作,可以...
- **文本内容**:使用`textContent`属性获取节点的文本内容,`nodeValue`则获取纯文本值,不包含子节点的文本。 ```javascript var attrValue = node.getAttribute('attrName'); var textContent = node....
在JavaScript中获取`<select>`元素选中项的文本值可以通过`this.options[this.selectedIndex].text`来实现。这在网页交互中非常常见,比如用于验证用户输入、展示提示信息或者根据用户选择执行相应操作。熟练掌握...
// 如果不是元素,追回其文本值; // 否则,递归遍历所有元素的子节点; t += e[i].nodeType != 1 ? e[i].nodeValue : text(e[i].childNodes); } return t; } ``` 2. **关键代码解读**: - `e = e....
// 在 inpt 这个控件失去焦点的时候,也要绑定一个事件,把 inpt 中的文本值返回给当前 li inpt.onblur = function () { this.parentElement.innerHTML = inpt.value; }; }; } } }; 北京 山西 上海 ...
9. `nodeTypedValue`、`nodeValue`:可以读写节点的值。 10. `ownerDocument`:返回包含当前节点的根文档,只读。 11. `parentNode`:返回父节点,只读。 12. `Parsed`:表示节点及其子节点是否已被解析,只读。 13....