本站首页    管理页面    写新日志    退出


«July 2025»
12345
6789101112
13141516171819
20212223242526
2728293031


公告
暂无公告...

我的分类(专题)

日志更新

最新评论

留言板

链接


Blog信息
blog名称:
日志总数:10
评论数量:25
留言数量:0
访问次数:89379
建立时间:2005年3月7日




[xml]XMLDOM属性列表
文章收藏

guan1200 发表于 2005/6/23 10:44:41

The Microsoft XML Parser To create an XML Document object with JavaScript, use the following code: var xmlDoc=new ActiveXObject("Microsoft.XMLDOM")xmlDoc.appendChild(xmlDoc.createElement("root")) XML Parser in Mozilla Browsers Plain XML documents are displayed in a tree-like structure in Mozilla (just like IE). Mozilla also supports parsing of XML data that resides in a file, using JavaScript. The parsed data can be displayed as HTML. To create an XML Document object with JavaScript in Mozilla, use the following code: var xmlDoc=document.implementation.createDocument("ns","root",null) The first parameter, ns, defines the namespace used for the XML document. The second parameter, root, is the XML root element in the XML file. The third parameter, null, is always null because it is not implemented yet. Loading an XML File Into the Parser The following code loads an existing XML document ("note.xml") into the XML parser: <script type="text/javascript">var xmlDoc=new ActiveXObject("Microsoft.XMLDOM")xmlDoc.async="false"xmlDoc.load("note.xml").........</script>//ie和firefox都支持load,firefox不支持loadXML(string text) The first line of the script creates an instance of the Microsoft XML parser. The third line tells the parser to load an XML document called "note.xml". The second line turns off asynchronized loading, to make sure that the parser will not continue execution of the script before the document is fully loaded. Accessing XML Elements by Name Addressing elements by number is NOT the preferred way to extract elements from XML documents. Using names is a better way: <script type="text/javascript">function loadXML(){var xmlDoc=new ActiveXObject("Microsoft.XMLDOM")xmlDoc.async="false"xmlDoc.load("note.xml")//注意firefox的load("note.xml")并不会读该文件,须要给fox增加loadXML()涵数xmlDoc.getElementsByTagName("to").item(0).textxmlDoc.getElementsByTagName("from").item(0).textxmlDoc.getElementsByTagName("heading").item(0).textxmlDoc.getElementsByTagName("body").item(0).text}</script> Important: To extract the text (Jani) from an element like this: <from>Jani</from>, the syntax is: getElementsByTagName("from").item(0).text, and NOT like this: getElementsByTagName("from").text. The reason for this is that the result returned from getElementsByTagName is an array of nodes, containing all nodes found within the XML document with the specified tag name (in this case "from"). The XMLHttpRequest object is supported in Internet Explorer 5.0+, Safari 1.2, Mozilla 1.0 / Firefox, and Netscape 7. What is an HTTP Request? With an HTTP request, a web page can make a request to, and get a response from a web server - without reloading the page. The user will stay on the same page, and he or she will not notice that scripts might request pages, or send data to a server in the background. By using the XMLHttpRequest object, a web developer can change a page with data from the server after the page has loaded. Google Suggest is using the XMLHttpRequest object to create a very dynamic web interface: When you start typing in Google's search box, a JavaScript sends the letters off to a server and the server returns a list of suggestions. Creating an XMLHttpRequest Object For Mozilla, Firefox, Safari, and Netscape: var xmlhttp=new XMLHttpRequest() For Internet Explorer: var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP") Example <script type="text/javascript">var xmlhttpfunction loadXMLDoc(url){// code for Mozilla, etc.if (window.XMLHttpRequest) { xmlhttp=new XMLHttpRequest() xmlhttp.onreadystatechange=xmlhttpChange xmlhttp.open("GET",url,true) xmlhttp.send(null) }// code for IEelse if (window.ActiveXObject) { xmlhttp=new ActiveXObject("Microsoft.XMLHTTP") if (xmlhttp) { xmlhttp.onreadystatechange=xmlhttpChange xmlhttp.open("GET",url,true) xmlhttp.send() } }}function xmlhttpChange(){// if xmlhttp shows "loaded"if (xmlhttp.readyState==4) { // if "OK" if (xmlhttp.status==200) { // ...some code here... } else { alert("Problem retrieving XML data") } }}</script> Why are we Using async in our Examples? Most of the examples here use the async mode (the third parameter of open() set to true). The async parameter specifies whether the request should be handled asynchronously or not. True means that script continues to run after the send() method, without waiting for a response from the server. false means that the script waits for a response before continuing script processing. By setting this parameter to false, you run the risk of having your script hang if there is a network or server problem, or if the request is long (the UI locks while the request is being made) a user may even see the "Not Responding" message. It is safer to send asynchronously and design your code around the onreadystatechange event The XMLHttpRequest Object Reference Methods Method Description abort() Cancels the current request getAllResponseHeaders() Returns the complete set of http headers as a string getResponseHeader("headername") Returns the value of the specified http header open("method","URL",async,"uname","pswd") Specifies the method, URL, and other optional attributes of a request The method parameter can have a value of "GET", "POST", or "PUT" (use "GET" when requesting data and use "POST" when sending data (especially if the length of the data is greater than 512 bytes. The URL parameter may be either a relative or complete URL. The async parameter specifies whether the request should be handled asynchronously or not. true means that script processing carries on after the send() method, without waiting for a response. false means that the script waits for a response before continuing script processing send(content) Sends the request setRequestHeader("label","value") Adds a label/value pair to the http header to be sent Properties Property Description onreadystatechange An event handler for an event that fires at every state change readyState Returns the state of the object: 0 = uninitialized 1 = loading 2 = loaded 3 = interactive 4 = complete responseText Returns the response as a string responseXML Returns the response as XML. This property returns an XML document object, which can be examined and parsed using W3C DOM node tree methods and properties status Returns the status as a number (e.g. 404 for "Not Found" or 200 for "OK") statusText Returns the status as a string (e.g. "Not Found" or "OK") XML DOM Node Types The DOM Structure The DOM presents a document as a hierarchy of node objects. The following table lists the different W3C node types, and which node types they may have as children: Node type Description Children Document Represents the entire document (it is the root-node of the DOM tree) Element (max. one), ProcessingInstruction, Comment, DocumentType DocumentFragment Represents a "lightweight" Document object, which can hold a portion of a document Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference DocumentType Represents a list of the entities that are defined for the document None EntityReference Represents an entity reference Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference Element Represents an element Element, Text, Comment, ProcessingInstruction, CDATASection, EntityReference Attr Represents an attribute Text, EntityReference ProcessingInstruction Represents a "processing instruction" None Comment Represents a comment None Text Represents textual content (character data) in an element or attribute None CDATASection Represents a block of text that may contains characters that would otherwise be treated as markup None Entity Represents an entity Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference Notation Represents a notation declared in the DTD None Node Types - Return Values Below is a list of what the nodeName and the nodeValue properties will return for each nodetype: Node type nodeName returns nodeValue returns Document #document null DocumentFragment #document fragment null DocumentType doctype name null EntityReference entity reference name null Element element name null Attr attribute name attribute value ProcessingInstruction target content of node Comment #comment comment text Text #text content of node CDATASection #cdata-section content of node Entity entity name null Notation notation name null NodeTypes - Named Constants NodeType Named Constant 1 ELEMENT_NODE 2 ATTRIBUTE_NODE 3 TEXT_NODE 4 CDATA_SECTION_NODE 5 ENTITY_REFERENCE_NODE 6 ENTITY_NODE 7 PROCESSING_INSTRUCTION_NODE 8 COMMENT_NODE 9 DOCUMENT_NODE 10 DOCUMENT_TYPE_NODE 11 DOCUMENT_FRAGMENT_NODE 12 NOTATION_NODE XML DOM - The Attr Object The Attr object The attr object represents an attribute of an element object. The attr object's properties and methods are described below: Properties Property Description attributes Returns a NamedNodeMap that contains all attributes of a node childNodes Returns a node list that contains all children of a node firstChild Returns the first child node of a node lastChild Returns the last child node of a node name Returns the name of the attribute nextSibling Returns the node immediately following a node. Two nodes are siblings if they have the same parent node nodeName Returns the name of the node (depending on the node type) nodeType Returns the node type as a number nodeValue Returns the value of the node ownerDocument Returns the Document object of a node (returns the root node of the document) parentNode Returns the parent node of a node previousSibling Returns the node immediately preceding a node. Two nodes are siblings if they have the same parent node value Returns the value of the attribute Methods Method Description appendChild(tagname) Appends a new child node to a node cloneNode(boolean) Creates an exact clone node of a node. If the boolean parameter is set to true, the cloned node clones all the child nodes of the original node as well hasChildNodes() Returns true if a node has child nodes. Otherwise it returns false insertBefore(newnode,refnode) Inserts a new node (newnode) before the existing node (refnode) removeChild(nodename) Removes the specified node and returns it replaceChild(newnode,oldnode) Replaces the oldnode with the newnode, and returns the oldnode The CDATASection  comment object The CDATASection object represents CDATASection nodes in a document. A CDATASection node is used to escape parts of text which normally would be recognized as markup. The CDATASection object's properties and methods are described below: Properties Property Description attributes Returns a NamedNodeMap that contains all attributes of a node childNodes Returns a node list that contains all children of a node data Returns the data of the node firstChild Returns the first child node of a node lastChild Returns the last child node of a node length Returns the length of the data (in characters) nextSibling Returns the node immediately following a node. Two nodes are siblings if they have the same parent node nodeName Returns the name of the node (depending on the node type) nodeType Returns the node type as a number nodeValue Returns the value of the node ownerDocument Returns the Document object of a node (returns the root node of the document) parentNode Returns the parent node of a node previousSibling Returns the node immediately preceding a node. Two nodes are siblings if they have the same parent node Methods Method Description appendChild(tagname) Appends a new child node to a node appendData(strdata) Appends the specified string to the existing data cloneNode(boolean) Creates an exact clone node of a node. If the boolean parameter is set to true, the cloned node clones all the child nodes of the original node as well deleteData(offset,count) Removes the specified range of characters from the data hasChildNodes() Returns true if a node has child nodes. Otherwise it returns false insertBefore(newnode,refnode) Inserts a new node (newnode) before the existing node (refnode) insertData(offset,string) Inserts the stringdata at the specified offset removeChild(nodename) Removes the specified node and returns it replaceChild(newnode,oldnode) Replaces the oldnode with the newnode, and returns the oldnode replaceData(offset,count,stringdata) Replaces the characters from the specified offset with the stringdata The Document object The document object is the root element in the node-tree. All nodes in the node tree are child nodes of the document object. The document object's properties, methods, and events are described below: Properties Property Description attributes Returns a NamedNodeMap that contains all attributes of a node childNodes Returns a node list that contains all children of a node doctype Returns the DTD or Schema for the document documentElement Returns the root element of the document firstChild Returns the first child node of a node implementation Returns the DOMImplementation object for this particular document lastChild Returns the last child node of a node nextSibling Returns the node immediately following a node. Two nodes are siblings if they have the same parent node nodeName Returns the name of the node nodeType Returns the node type as a number nodeValue Returns the value of the node ownerDocument Returns the Document object of a node (returns the root node of the document) parentNode Returns the parent node of a node previousSibling Returns the node immediately preceding a node. Two nodes are siblings if they have the same parent node Methods Method Description appendChild(tagname) Appends a new child node to a node cloneNode(boolean) Creates an exact clone node of a node. If the boolean parameter is set to true, the cloned node clones all the child nodes of the original node as well createAttribute(attrname) Creates an Attr node with the specified name createCDATASection(text) Creates a CDATASection node, containing the specified text createComment(text) Creates a comment node, containing the specified text createDocumentFragment() Creates an empty documentFragment object createElement(tagname) Creates an element node with the specified name createEntityReference(refname) Creates an entityReference node with the specified name createProcessingInstruction(target,text) Creates a processingInstruction node, containing the specified target and text createTextNode(text) Creates a text node, containing the specified text getElementsByTagName(tagname) Returns the specified node, and all its child nodes, as a node list hasChildNodes() Returns true if a node has child nodes. Otherwise it returns false insertBefore(newnode,refnode) Inserts a new node (newnode) before the existing node (refnode) removeChild(nodename) Removes the specified node and returns it replaceChild(newnode,oldnode) Replaces the oldnode with the newnode, and returns the oldnode The Element object The element object represents the element nodes in the document. If the element node contains text, this text is represented in a text node. The element object's properties and methods are described below: Properties Property Description attributes Returns a NamedNodeMap that contains all attributes of a node childNodes Returns a node list that contains all children of a node firstChild Returns the first child node of a node lastChild Returns the last child node of a node nextSibling Returns the node immediately following a node. Two nodes are siblings if they have the same parent node nodeName Returns the name of the node (depending on the node type) nodeType Returns the node type as a number nodeValue Returns the value of the node ownerDocument Returns the Document object of a node (returns the root node of the document) parentNode Returns the parent node of a node previousSibling Returns the node immediately preceding a node. Two nodes are siblings if they have the same parent node tagName Returns the name of the element node Methods Method Description appendChild(tagname) Appends a new child node to a node cloneNode(boolean) Creates an exact clone node of a node. If the boolean parameter is set to true, the cloned node clones all the child nodes of the original node as well getAttribute(attrname) Returns the value of the specified attribute getAttributeNode(attrname) Returns the specified attribute node as an Attr object getElementsByTagName(tagname) Returns the specified node, and all its child nodes, as a node list hasChildNodes() Returns true if a node has child nodes. Otherwise it returns false insertBefore(newnode,refnode) Inserts a new node (newnode) before the existing node (refnode) normalize() Combines all subtree Text nodes into a single one removeAttribute(attrname) Removes the specified attribute's value removeAttributeNode(attriname) Removes the specified attribute node removeChild(nodename) Removes the specified node and returns it replaceChild(newnode,oldnode) Replaces the oldnode with the newnode, and returns the oldnode setAttribute(attrname,attrvalue) Sets the value of the named attribute setAttributeNode(attrname) Inserts the specified new attribute to the element The Node Object The node object represents a node in the node-tree. The node object's properties and methods are described below: Properties Property Description attributes Returns a NamedNodeMap that contains all attributes of a node childNodes Returns a node list that contains all children of a node firstChild Returns the first child node of a node lastChild Returns the last child node of a node nextSibling Returns the node immediately following a node. Two nodes are siblings if they have the same parent node nodeName Returns the name of the node (depending on the node type) nodeType Returns the node type as a number nodeValue Returns the value of the node ownerDocument Returns the Document object of a node (returns the root node of the document) parentNode Returns the parent node of a node previousSibling Returns the node immediately preceding a node. Two nodes are siblings if they have the same parent node Methods Method Description appendChild(tagname) Appends a new child node to a node cloneNode(boolean) Creates an exact clone node of a node. If the boolean parameter is set to true, the cloned node clones all the child nodes of the original node as well hasChildNodes() Returns true if a node has child nodes. Otherwise it returns false insertBefore(newnode,refnode) Inserts a new node (newnode) before the existing node (refnode) removeChild(nodename) Removes the specified node and returns it replaceChild(newnode,oldnode) Replaces the oldnode with the newnode, and returns the oldnode The NodeList object The nodeList object represents a node and its child nodes as a node-tree. The nodeList object's properties and methods are described below: Properties Property Description length Returns the number of items in the node list Methods Method Description item(index) Returns the item at the specified index in the node list The Text object The text object represents the text of an attribute or element object. The text object's properties and methods are described below: Properties Property Description attributes Returns a NamedNodeMap that contains all attributes of a node childNodes Returns a node list that contains all children of a node data Returns the data of the node firstChild Returns the first child node of a node lastChild Returns the last child node of a node length Returns the length of the data (in characters) nextSibling Returns the node immediately following a node. Two nodes are siblings if they have the same parent node nodeName Returns the name of the node (depending on the node type) nodeType Returns the node type as a number nodeValue Returns the value of the node ownerDocument Returns the Document object of a node (returns the root node of the document) parentNode Returns the parent node of a node previousSibling Returns the node immediately preceding a node. Two nodes are siblings if they have the same parent node Methods Method Description appendChild(tagname) Appends a new child node to a node appendData(strdata) Appends the specified string to the existing data cloneNode(boolean) Creates an exact clone node of a node. If the boolean parameter is set to true, the cloned node clones all the child nodes of the original node as well deleteData(offset,count) Removes the specified range of characters from the data hasChildNodes() Returns true if a node has child nodes. Otherwise it returns false insertBefore(newnode,refnode) Inserts a new node (newnode) before the existing node (refnode) insertData(offset,string) Inserts the stringdata at the specified offset removeChild(nodename) Removes the specified node and returns it replaceChild(newnode,oldnode) Replaces the oldnode with the newnode, and returns the oldnode replaceData(offset,count,stringdata) Replaces the characters from the specified offset with the stringdata


阅读全文(5254) | 回复(0) | 编辑 | 精华
 



发表评论:
昵称:
密码:
主页:
标题:
验证码:  (不区分大小写,请仔细填写,输错需重写评论内容!)



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.031 second(s), page refreshed 144756452 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号