javascript
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返回类型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 正则中需要转义的特殊字符小结
- 下一篇: ie下提示SCRIPT1028:缺少标识