[b]节点对象属性[/b]
childNodes—返回节点到子节点的节点列表
firstChild—返回节点的首个子节点。
lastChild—返回节点的最后一个子节点。
nextSibling—返回节点之后紧跟的同级节点。
nodeName—返回节点的名字,根据其类型。
nodeType—返回节点的类型。
nodeValue—设置或返回节点的值,根据其类型。
ownerDocument—返回节点的根元素(document对象)。
parentNode—返回节点的父节点。
previousSibling—返回节点之前紧跟的同级节点。
text—返回节点及其后代的文本(IE独有)。
xml—返回节点及其后代的XML(IE独有)。
[b]节点对象的方法[/b]
appendChild()—向节点的子节点列表的结尾添加新的子节点。
cloneNode()—复制节点。
hasChildNodes()—判断当前节点是否拥有子节点。
insertBefore()—在指定的子节点前插入新的子节点。
normalize()—合并相邻的Text节点并删除空的Text节点。
removeChild()—删除(并返回)当前节点的指定子节点。
replaceChild()—用新节点替换一个子节点。
IE6独有
selectNodes()—用一个XPath表达式查询选择节点。
selectSingleNode()—查找和XPath查询匹配的一个节点。
transformNode()—使用XSLT把一个节点转换为一个字符串。
transformNodeToObject()—使用XSLT把一个节点转换成为一个文档。
[b]NodeList对象[/b]
length –返回节点列表中的节点数目。
item()—返回节点列表中处于指定的索引号的节点。
例如:
输出:title element:4
输出:book
[b]
NamedNodeMap对象[/b]
length—返回列表中节点数目。
getNamedItem()—返回指定的节点。(通过名称)
item()—返回处于指定索引号的节点。
removeNamedItem()—删除指定的节点(根据名称)。
例如:
输出:1
输出:COOKING
删除第一个book元素的category属性
Document对象代表整个XML文档。
[b]Document对象的属性。[/b]
async—规定XML文件的下载是否应当被同步处理。
childNodes—返回属于文档的子节点的节点列表。
doctype—返回与文档相关的文档类型声明。
documentElement—返回文档的子节点。
firstChild—返回文档的首个子节点。
implementation—返回处理该文档的DOMImplementation对象。(IE没有)
lastChild—返回文档的最后一个子节点。
nodeType—返回节点类型。
nodeName—依据节点的类型返回其名称。
nodeValue—依据节点的类型返回其值。
text—返回节点及其后代的文本(IE独有)。
xml—返回节点及其后代的XML(IE独有)。
[b]Document对象的方法[/b]
createAttribute(att_name)—创建拥有指定名称的属性节点,并返回新的属性对象。
createCDATASection(data)—创建CDATA区段节点。
createComment(data)—创建注释节点。
createDocumentFragment—创建空的DocumentFragment对象,并返回此对象。
createElement(node_name)—创建元素节点。
createEntityReference(name)—创建EntityReference对象,并返回此对象。(IE独有)
createTextNode(data)—创建文本节点。
getElementById(elementid)—查找具有指定的唯一ID的元素。
getElementsByTagName(node_name)—返回所有具有指定名称的元素节点。
例如:
Element 对象的属性
attributes—返回元素的属性的NamedNodeMap
childNodes—返回元素的子节点的NodeList
firstChild—返回元素的首个子节点。
lastChild—返回元素的最后一个子节点。
nextSibling—返回元素之后紧跟的节点。
nodeName—返回节点的名称。
nodeType—返回元素的类型。
ownerDocument—返回元素所属的根元素(document对象)。
parentNode—返回元素的父节点。
previousSibling—返回元素之前紧跟的节点。
tagName—返回元素的名称。
text—返回节点及其后代的文本。(IE-only)
xml—返回节点及其后代得XML。(IE-only)
[b]Element对象的方法[/b]
appendChild(node)—向节点的子节点列表末尾添加新的子节点。
cloneNode(true)—克隆节点。
getAttribute(att_name)—返回属性的值。
getAttributeNode(att_name)—以 Attribute 对象返回属性节点。
getElementsByTagName(node_name)—找到具有指定标签名的子孙元素。
hasAttribute(att_name)—返回元素是否拥有指定的属性。
hasAttributes()—返回元素是否拥有属性。
hasChildNodes()—返回元素是否拥有子节点。
insertBefore(new_node,existing_node)—在已有的子节点之前插入一新的子节点。
removeAttribute(att_name)—删除指定的属性。
removeAttributeNode(att_node)—删除指定的属性节点。
removeChild(node)—删除子节点。
replaceChild(new_node,old_node)—替换子节点。
setAttribute(name,value)—添加新的属性或者改变属性的值。
setAttribute(att_node)—添加新的属性。
Attr对象
Attr 对象表示 Element 对象的属性。
name—返回属性的名称。
nodeName—返回节点的名称,依据其类型
nodeType—返回节点的类型。
nodeValue—设置或返回节点的值,依据其类型
ownerDocument—返回属性所属的根元素(document对象)。
specified—如果属性值被设置在文档中,则返回 true,如果其默认值被设置在 DTD/Schema 中,则返回 false。
value—设置或返回属性的值。
text—返回属性的文本。IE-only。
xml—返回属性的 XML。IE-only。
Text对象的属性
data—设置或返回元素或属性的文本。
length—返回元素或属性的文本长度。
Text对象的方法
appendData(string)—向节点追加数据。
deleteData(start,length)—从节点删除数据。
insertData(start,string)— 向节点中插入数据。
replaceData(start,length,string)—替换节点中的数据。
replaceData(offset)— 把一个 Text 节点分割成两个。
substringData(start,length)— 从节点提取数据。
childNodes—返回节点到子节点的节点列表
firstChild—返回节点的首个子节点。
lastChild—返回节点的最后一个子节点。
nextSibling—返回节点之后紧跟的同级节点。
nodeName—返回节点的名字,根据其类型。
nodeType—返回节点的类型。
nodeValue—设置或返回节点的值,根据其类型。
ownerDocument—返回节点的根元素(document对象)。
parentNode—返回节点的父节点。
previousSibling—返回节点之前紧跟的同级节点。
text—返回节点及其后代的文本(IE独有)。
xml—返回节点及其后代的XML(IE独有)。
[b]节点对象的方法[/b]
appendChild()—向节点的子节点列表的结尾添加新的子节点。
cloneNode()—复制节点。
hasChildNodes()—判断当前节点是否拥有子节点。
insertBefore()—在指定的子节点前插入新的子节点。
normalize()—合并相邻的Text节点并删除空的Text节点。
removeChild()—删除(并返回)当前节点的指定子节点。
replaceChild()—用新节点替换一个子节点。
IE6独有
selectNodes()—用一个XPath表达式查询选择节点。
selectSingleNode()—查找和XPath查询匹配的一个节点。
transformNode()—使用XSLT把一个节点转换为一个字符串。
transformNodeToObject()—使用XSLT把一个节点转换成为一个文档。
[b]NodeList对象[/b]
length –返回节点列表中的节点数目。
item()—返回节点列表中处于指定的索引号的节点。
例如:
xmlDoc = loadXMLDoc(“books.xml”);
var x = xmlDoc.getElementsByTagName(“title”);
document.write(“title element:” + x.length);
输出:title element:4
var y = xmlDoc.documentElement.childNodes;
document.write(y.item(0).nodeName);
输出:book
[b]
NamedNodeMap对象[/b]
length—返回列表中节点数目。
getNamedItem()—返回指定的节点。(通过名称)
item()—返回处于指定索引号的节点。
removeNamedItem()—删除指定的节点(根据名称)。
例如:
xmlDoc = loadXMLDoc(“books.xml”);
var x = xmlDoc.getElementsByTagName(“book”);
document.write(x.item(0).attributes.length);
输出:1
document.write(x.item(0).attributes.getNamedItem(“category”);
输出:COOKING
x.item(0).attributes.removeNamedItem(“category”);
删除第一个book元素的category属性
Document对象代表整个XML文档。
[b]Document对象的属性。[/b]
async—规定XML文件的下载是否应当被同步处理。
childNodes—返回属于文档的子节点的节点列表。
doctype—返回与文档相关的文档类型声明。
documentElement—返回文档的子节点。
firstChild—返回文档的首个子节点。
implementation—返回处理该文档的DOMImplementation对象。(IE没有)
lastChild—返回文档的最后一个子节点。
nodeType—返回节点类型。
nodeName—依据节点的类型返回其名称。
nodeValue—依据节点的类型返回其值。
text—返回节点及其后代的文本(IE独有)。
xml—返回节点及其后代的XML(IE独有)。
[b]Document对象的方法[/b]
createAttribute(att_name)—创建拥有指定名称的属性节点,并返回新的属性对象。
createCDATASection(data)—创建CDATA区段节点。
createComment(data)—创建注释节点。
createDocumentFragment—创建空的DocumentFragment对象,并返回此对象。
createElement(node_name)—创建元素节点。
createEntityReference(name)—创建EntityReference对象,并返回此对象。(IE独有)
createTextNode(data)—创建文本节点。
getElementById(elementid)—查找具有指定的唯一ID的元素。
getElementsByTagName(node_name)—返回所有具有指定名称的元素节点。
例如:
var xmlDoc = loadXMLDoc("book.xml");
xmlDoc.async = false;
var book = xmlDoc.getElementsByTagName("book");
var newtext1="Special Offer & Book Sale";
var newCDATA=xmlDoc.createCDATASection(newtext1);
book[0].appendChild(newCDATA);
var newtext2="Revised September 2006";
var newComment=xmlDoc.createComment(newtext2);
book[0].appendChild(newComment);
var var newel=xmlDoc.createElement('edition');
var newtext3=xmlDoc.createTextNode('First');
newel.appendChild(newtext3);
book[0].appendChild(newel);
document.write("<xmp>" + xmlDoc.xml + "</xmp>");
Element 对象的属性
attributes—返回元素的属性的NamedNodeMap
childNodes—返回元素的子节点的NodeList
firstChild—返回元素的首个子节点。
lastChild—返回元素的最后一个子节点。
nextSibling—返回元素之后紧跟的节点。
nodeName—返回节点的名称。
nodeType—返回元素的类型。
ownerDocument—返回元素所属的根元素(document对象)。
parentNode—返回元素的父节点。
previousSibling—返回元素之前紧跟的节点。
tagName—返回元素的名称。
text—返回节点及其后代的文本。(IE-only)
xml—返回节点及其后代得XML。(IE-only)
[b]Element对象的方法[/b]
appendChild(node)—向节点的子节点列表末尾添加新的子节点。
cloneNode(true)—克隆节点。
getAttribute(att_name)—返回属性的值。
getAttributeNode(att_name)—以 Attribute 对象返回属性节点。
getElementsByTagName(node_name)—找到具有指定标签名的子孙元素。
hasAttribute(att_name)—返回元素是否拥有指定的属性。
hasAttributes()—返回元素是否拥有属性。
hasChildNodes()—返回元素是否拥有子节点。
insertBefore(new_node,existing_node)—在已有的子节点之前插入一新的子节点。
removeAttribute(att_name)—删除指定的属性。
removeAttributeNode(att_node)—删除指定的属性节点。
removeChild(node)—删除子节点。
replaceChild(new_node,old_node)—替换子节点。
setAttribute(name,value)—添加新的属性或者改变属性的值。
setAttribute(att_node)—添加新的属性。
x=xmlDoc.getElementsByTagName('book');
for(i=0;i<x.length;i++)
{
attnode=x.item(i).getAttributeNode("category");
document.write(attnode.name);
document.write(" = ");
document.write(attnode.value);
document.write("<br />");
}
for(i=0;i<x.length;i++){
document.write(x[i].getAttribute('category'));
document.write("<br />");
}
xmlDoc=loadXMLDoc("/example/xdom/books.xml");
x=xmlDoc.getElementsByTagName('book');
document.write(x[0].getAttribute('category'));
document.write("<br />");
x[0].removeAttribute('category');
document.write(x[0].getAttribute('category'));
var attnode = x[1].getAttributeNode("category");
var y = x[1].removeAttributeNode(attnode);
document.write("<xmp>" + xmlDoc.xml + "</xmp>");
function get_lastchild(n)
{
x = n.lastChild;
while(x.noteType!=1){
x = x.previousSibling;
}
return x;
}
function get_firstChild(n){
x = n.firstChild;
whild(x.nodeType!=1){
x=x.nextSibling;
}
return x;
}
xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("book")[0];
deleted_node=x.removeChild(get_lastchild(x));
document.write("Node removed: " + deleted_node.nodeName);
Attr对象
Attr 对象表示 Element 对象的属性。
name—返回属性的名称。
nodeName—返回节点的名称,依据其类型
nodeType—返回节点的类型。
nodeValue—设置或返回节点的值,依据其类型
ownerDocument—返回属性所属的根元素(document对象)。
specified—如果属性值被设置在文档中,则返回 true,如果其默认值被设置在 DTD/Schema 中,则返回 false。
value—设置或返回属性的值。
text—返回属性的文本。IE-only。
xml—返回属性的 XML。IE-only。
Text对象的属性
data—设置或返回元素或属性的文本。
length—返回元素或属性的文本长度。
Text对象的方法
appendData(string)—向节点追加数据。
deleteData(start,length)—从节点删除数据。
insertData(start,string)— 向节点中插入数据。
replaceData(start,length,string)—替换节点中的数据。
replaceData(offset)— 把一个 Text 节点分割成两个。
substringData(start,length)— 从节点提取数据。