nodeValue以及其与value的区别以及JS nodeName、nodeValue、nodeType返回类型
nodeName、nodeValue 以及 nodeType 包含有关于节点的信息。
nodeName 属性含有某个节点的名称。
元素节点的 nodeName 是标签名称
属性节点的 nodeName 是属性名称
文本节点的 nodeName 永远是 #text
文档节点的 nodeName 永远是 #document
注释:nodeName 所包含的 XML 元素的标签名称永远是大写的
nodeValue
对于文本节点,nodeValue 属性包含文本。
对于属性节点,nodeValue 属性包含属性值。
nodeValue 属性对于文档节点和元素节点是不可用的。
nodeType
nodeType 属性可返回节点的类型。
最重要的节点类型是:
元素类型 --> 节点类型
元素element --> 1
属性attr --> 2
文本text --> 3
注释comments --> 8
文档document --> 9
nodeValue就是用来得到“文本元素的值”的,即只适用于“文本节点”;
例子:
<html>
<head>
<script type="text/javascript">
function getNodeValue()
{
var nv=document.getElementById("td1").firstChild.nodeValue;
var nn=document.getElementById("tr1").firstChild.nodeName;
var nv1=document.getElementById("tr1").firstChild.nodeValue;
alert("nv="+nv);
alert("nn="+nn);
alert("nv1="+nv1);
}
</script>
</head>
<body>
<table>
<tr id="tr1">
<td id="td1" >John</td>
<td>Doe</td>
<td>Alaska</td>
</tr>
</table>
<input type="button" value="button1" οnclick="getNodeValue()"/>
</body>
</html>
以上得到的结果:
nv=John;
nn=td;
nv1=null;
要分清元素的value属性和nodeValue 不一样,nodeValue适用于“文本节点”和“属性节点”;对应“文档节点”和“标签节点”不起作用
接口 |
nodeType常量 |
nodeType值 |
备注 |
Element |
Node.ELEMENT_NODE |
1 |
元素节点 |
Text |
Node.TEXT_NODE |
3 |
文本节点 |
Document |
Node.DOCUMENT_NODE |
9 |
document |
Comment |
Node.COMMENT_NODE |
8 |
注释的文本 |
DocumentFragment |
Node.DOCUMENT_FRAGMENT_NODE |
11 |
document片断 |
Attr |
Node.ATTRIBUTE_NODE |
2 |
节点属性 |
/*
定义和用法
childNodes 属性可返回指定节点的子节点的节点列表,也就是包含在容易内的所有控件与文本属性字段,如果希望得到这些中的某些,必须通过
类别属性进行筛选。
childNodes常用属性:
nodeValue:nodeValue适用于“文本节点(<td>中的文本内容)”和“属性节点”;对应“文档节点”和“标签节点(li)”不起作用
nodeName:元素节点的 nodeName 是标签名称
属性节点的 nodeName 是属性名称
文本节点的 nodeName 永远是 #text
文档节点的 nodeName 永远是 #document
nodeType:返回的数值 1:元素节点、2:属性节点、3:文本节点
firstChild:返回容器内的第一个控件对象,可以利用这个返回对象去获取该控件的属性信息
parentNode:返回子节点对象外层的父对象,可以利用这个返回父对象去获取该控件的属性信息
previousSibling:获取同级节点上级节点对象,可以利用这个返回对象去获取该节点的属性信息
nextSibling:获取同级节点下级节点对象,可以利用这个返回对象去获取该节点的属性信息
语法:
nodeObject.childNodes
提示和注释
提示:请使用 length 属性来计算一个节点列表中节点的数目。当你已获悉节点列表的长度后,您就可以轻松地循环遍历此列表,并提取您所需要的值!
实例
在所有的例子中,我们将使用 XML 文件 books.xml,以及 JavaScript 函数 loadXMLDoc()。
下面的代码片段显示了此XML文档的子节点:
xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.childNodes;
for (i=0;i<x.length;i++) { document.write("Nodename: " + x[i].nodeName) document.write(" (nodetype: " + x[i].nodeType + ")<br />") }
*/
nodeValue以及其与value的区别以及JS nodeName、nodeValue、nodeType返回类型相关推荐
- nodeName,nodeValue,nodeType,typeof,instanceof 的区别
nodeName 属性含有某个节点的名称. 更多免费教学文章请关注这里 元素节点的 nodeName 是标签名称 属性节点的 nodeName 是属性名称 文本节点的 nodeName 永远是 #te ...
- 为什么不能根据返回类型来区分重载_Java重载和重写的区别
前言 有时候我真的分不清方法重载和方法重写,总数把这两个混淆 特此记录下此片文章,方便以后自己查询时不用再去Baidu.Google.Bing了 Java 重载与重写是什么?有什么区别? 重载(Ove ...
- 概念区别 【编译型语言与解释型语言、动态类型语言与静态类型语言、强类型语言与弱类型语言】
概念区别 [编译型语言与解释型语言.动态类型语言与静态类型语言.强类型语言与弱类型语言] 文章目录 一.编译型语言与解释型语言 二.动态类型语言与静态类型语言 三.强类型语言与弱类型语言 总结 一.编 ...
- append和appendTo的区别以及js中的appendChild用法
append和appendTo的区别以及js中的appendChild用法 很多像我一样接触JS没多久的小白对append和appendTo的区别以及js中的appendChild用法都会有所模糊,下 ...
- if,if else,else if的区别,以js为例
if,if else,else if的区别,以js为例 if 应用场景 if else 应用场景 else if 应用场景 关于if的嵌套 实用场景补充之if 实用场景补充之if else 实用场景补 ...
- python2.x 与python3.x之d.keys()返回类型的区别
问题:python2.x 与python3.x之d.keys()返回类型的区别 TypeError: 'dict_keys' object does not support indexing type ...
- Reflect.ownKeys()与Object.keys()区别 以及 JS中的可枚举属性与不可枚举属性
代码test1: var obj = {} Object.defineProperty(obj, 'method1', {value: function () {alert("Non enu ...
- DOM节点中属性nodeName、nodeType和nodeValue的区别 Delphi
http://msdn.microsoft.com/zh-cn/library/vstudio/hf9hbf87.aspx <?xml version="1.0"?>& ...
- mysql数据库blob区别_MySQL中TEXT与BLOB字段类型的区别
在MySQL中有两个字段类型容易让人感觉混淆,那就是TEXT与BLOB,特别是自己写博客程序的博主不知道改为自己的博客正文字段选择TEXT还是BLOB类型. 下面给出几点区别: 一.主要差别 TEXT ...
最新文章
- android监听器在哪里创建,[转载]android开发中创建按钮事件监听器的几种方法
- Spring配置文件-Bean实例化的三种方式
- 【框架】[Spring]XML配置实现AOP拦截-切点:JdkRegexpMethodPointcut
- 使用Jedis源码生成Jedis.jar
- 讨论用户注册有的几篇好文
- 文件字节输入流 java
- selenium的页面等待
- JDK1.7 深入理解 LinkedHashMap
- 插画素材 | 圣诞节设计离不了!
- 开源项目的名称背后都有哪些故事?
- windows中的一个小bug
- CentOS 安装Docker 并部署配置MySql
- 机器学习之微积分零基础学习
- 锚定本地化:电子签杀入下半场
- Win10 如何解决,应用商店打不开,错误代码0x80131500问题
- 七缸发动机预热,docker swarm + .net core 高速飙车成功
- Python入门_打印矩形
- 一文说尽NB—IOT和Lora
- android中流媒体
- 《编程之美》背后的作者之美
热门文章
- 【MVC】Controller的使用
- itertools库
- datagridview后台获取选中行的值的几种方式
- 【Unity3D基础教程】给初学者看的Unity教程(四):通过制作Flappy Bird了解Native 2D中的RigidBody2D和Collider2D...
- html5+CSS3实现的炫酷超链接特效
- 使用sizeof计算类的大小
- Tree 1.5 For Net 2.0
- android adb install Failure,提示base.apkcode is missing问题的解决
- wps文字退格会删掉文字_WPS第二行文字前面有大量空白,按退格不会动,只是把上一行末尾的字去掉。...
- WPF 3D中多个模型如何设置某一个在最前?