麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發(fā) > AJAX > 正文

xmlhttp xmldoc 和 c#中dataset的結(jié)合 實(shí)現(xiàn)ajax簡單示例_ajax教程

2024-09-01 08:34:04
字體:
供稿:網(wǎng)友

本例包括
1.客戶端用xmlHTTP 向服務(wù)器頁面發(fā)送請(qǐng)求
2.服務(wù)器頁面后臺(tái)用C#中DataSet實(shí)現(xiàn)數(shù)據(jù)庫的操作 并得到結(jié)果
3.客戶端用xmlDOC 得到xmlHTTP返回的結(jié)果 并對(duì)結(jié)果進(jìn)行操作

附錄
XMLHTTP的常用方法和屬性
XMLDOC的常用方法和屬性

=========================
發(fā)送xmlHttp請(qǐng)求到服務(wù)器端
=========================

var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.open("GET","Default2.aspx",false,"","");
xmlhttp.send();
======================
服務(wù)器端的相關(guān)數(shù)據(jù)處理
======================

    protected void Page_Load(object sender, EventArgs e)
    {
        //連接數(shù)據(jù)庫
        SqlConnection myConn = new SqlConnection("Data Source=192.168.0.36;Initial Catalog=Northwind;User ID=sa;Password=sa");
        SqlDataAdapter myda = new SqlDataAdapter("select top 5 * from orders", myConn);
        DataSet myds = new DataSet();
        myConn.Open();
        myda.Fill(myds);
        myConn.Close();
 
        // 把xml對(duì)象發(fā)送給客戶端
        Response.ContentType = "text/xml";
        Response.Write(myds.GetXml());
        Response.End();
    }

=============================================
xmlDOC 得到xmlHTTP返回的結(jié)果 并對(duì)結(jié)果進(jìn)行操作
=============================================


// 從服務(wù)器得到處理后的xml對(duì)象
var xmldom = new ActiveXObject("Microsoft.XMLDOM");
xmlhttp.responseXML.createProcessingInstruction("xml"," version=\"1.0\" encoding=\"gb2312\"");
xmldom = xmlhttp.responseXML.documentElement;
//alert(xmldom.xml);
     
// 通過xmldom操作結(jié)果
var length = xmldom.getElementsByTagName("OrderID").length;
alert(length);

-----------------------------------附 錄----------------------------------
以下內(nèi)容 摘錄于網(wǎng)上 對(duì)原作者的用心整理和無私分享表示感謝
========
XMLHTTP
========
Open方法
   包含了5個(gè)參數(shù),前三個(gè)是必要的,
   后兩個(gè)是可選的(在服務(wù)器需要進(jìn)行身份驗(yàn)證時(shí)提供)。
   參數(shù)的含義如下所示:
   http-method: HTTP的通信方式,比如GET或是 POST
   url: 接收XML數(shù)據(jù)的服務(wù)器的URL地址。通常在URL中要指明 ASP或CGI程式
   async: 一個(gè)布爾標(biāo)識(shí),說明請(qǐng)求是否為異步的。
          如果是異步通信方式(true),客戶機(jī)就不等待服務(wù)器的響應(yīng);
          如果是同步方式(false),客戶機(jī)就要等到服務(wù)器返回消息后才去執(zhí)行其他操作
   userID 用戶ID,用于服務(wù)器身份驗(yàn)證
   password 用戶密碼,用于服務(wù)器身份驗(yàn)證

用Open方法對(duì)Request對(duì)象進(jìn)行初始化后,調(diào)用Send方法發(fā)送XML數(shù)據(jù)

Send方法
    參數(shù)類型是Variant,能是字符串、DOM樹或任意數(shù)據(jù)流。
    發(fā)送數(shù)據(jù)的方式分為同步和異步兩種。
    在異步方式下,數(shù)據(jù)包一旦發(fā)送完畢,就結(jié)束Send進(jìn)程,客戶機(jī)執(zhí)行其他的操作;
    而在同步方式下,客戶機(jī)要等到服務(wù)器返回確認(rèn)消息后才結(jié)束Send進(jìn)程。

XMLHTTP對(duì)象中的readyState屬性
    能夠反映出服務(wù)器在處理請(qǐng)求時(shí)的進(jìn)展?fàn)顩r。
    客戶機(jī)的程式能根據(jù)這個(gè)狀態(tài)信息設(shè)置相應(yīng)的事件處理方法。
    值 說明
    0   Response對(duì)象已創(chuàng)建,但XML文件上載過程尚未結(jié)束
    1   XML文件已裝載完畢
    2   XML文件已裝載完畢,正在處理中
    3   部分XML文件已解析
    4   文件已解析完畢,客戶端能接受返回消息

客戶機(jī)接收響應(yīng)是通過XMLHTTP對(duì)象的屬性實(shí)現(xiàn)
    responseText:將返回消息作為文本字符串;
    responseBody:將返回消息作為HTML文件內(nèi)容;
    responseXML:將返回消息視為XML文件,在服務(wù)器響應(yīng)消息中含有XML數(shù)據(jù)時(shí)使用;
    responseStream:將返回消息視為Stream對(duì)象

=======
XMLDOC
=======
Document 對(duì)象屬性
以下所列是可用的document對(duì)象屬性:
1. async
2. attributes
3. childNodes
4. doctype
5. document.lement
6. firstChild
7. implementation
8. lastChild
9. nextSibling
10. nodeName
11. nodeType
12. nodevalue
13. ondataavailable
14. onreadystatechange
15. ownerdocument.
16. parentNode
17. parseError
18. previousSibling
19. readyState
20. url
21. validateOnParse
22. xml

以下列出關(guān)于document對(duì)象可用的方法。
1. abort
2. appendChild
3. cloneNode
4. createAttribute
5. createCDATASection
6. createComment
7. createdocument.ragment
8. createElement
9. createEntityReference
10. createNode
11. createProcessingInstruction
12. createTextNode
13. getElementsByTagName
14. hasChildNodes
15. insertBefore
16. load
17. loadXML
18. nodeFromID
19. parsed
20. removeChild
21. replaceChild
22. selectNodes
23. selectSingleNode
24. transformNode

下面列出來的是document對(duì)象可用的事件:
1. Ondataavailable
2. Onreadystatechange

Document 對(duì)象屬性
以下所列是可用的document對(duì)象屬性:
1. async
2. attributes
3. childNodes
4. doctype
5. document.lement
6. firstChild
7. implementation
8. lastChild
9. nextSibling
10. nodeName
11. nodeType
12. nodevalue
13. ondataavailable
14. onreadystatechange
15. ownerdocument.
16. parentNode
17. parseError
18. previousSibling
19. readyState
20. url
21. validateOnParse
22. xml


async 屬性
------------------
async 屬性表示是否允許異步的下載。

基本語法:
boolvalue = XMLdocument.async;
XMLdocument.async = boolvalue;
說明:布爾值是可擦寫的(read/write),如果準(zhǔn)許異步下載,值為True;反之則為False。
使用范例:
xmlDoc.async = "false";
alert(xmlDoc.async);

attribute 屬性
-------------------
傳回目前節(jié)點(diǎn)的屬性列表。

基本語法:
objAttributeList = xmlNode.attributes;
說明:傳回一個(gè)物件。如果此節(jié)點(diǎn)不能包含屬性,則傳回空值。
使用范例:
objAttList = xmlDoc.document.lement.attributes;
alert(objAttList);
------------------------------------------------------------------------------
[Note]
例子以[object]為結(jié)果傳回。
這是由于被傳回的對(duì)象,若不使用其他的對(duì)象屬性,就不能以文字來表示,
在本附錄中包含數(shù)個(gè)這樣的例子。盡管非常多對(duì)象屬性本身似乎不是非常有用,
但你將會(huì)在附錄中看到怎么組合屬性和方法得到你要的結(jié)果。
------------------------------------------------------------------------------


childNodes 屬性
-----------------
傳回一個(gè)節(jié)點(diǎn)清單,包含該節(jié)點(diǎn)所有可用的子節(jié)點(diǎn)。

基本語法:
objNodeList=node.childNodes;
說明:傳回一個(gè)物件。如果這節(jié)點(diǎn)沒有子節(jié)點(diǎn),傳回null。
使用范例:
objNodeList = xmlDoc.childNodes;
alert(objNodeList);


doctype 屬性
-----------------
傳回文件型態(tài)節(jié)點(diǎn),包含目前文件的DTD。
這節(jié)點(diǎn)是一般的文件型態(tài)宣告,
例如,節(jié)點(diǎn),
名為EMAIL 的節(jié)點(diǎn)物件會(huì)被傳回。

基本語法:
objDocType=xmldocument.doctype;
說明:傳回一個(gè)對(duì)象,這個(gè)屬性是只讀的。如果這文件不包含DTD,會(huì)傳回null。
使用范例:
objDocType = xmlDoc.doctype;
alert(objDocType.nodeName);
document.lement 屬性


確認(rèn)XML 文件的根(Root)節(jié)點(diǎn)。
----------------------------
基本語法:
objDoc=xmldocumentdocument.element;
說明:回一個(gè)在單一根文件元素中包含數(shù)據(jù)的對(duì)象。
此屬性可讀/寫,如果文件中不包含根節(jié)點(diǎn),將傳回null。


使用范例:
objDocRoot = xmlDoc.document.element;
alert(objDocRoot);


firstChild 屬性
-----------------
確認(rèn)在目前節(jié)點(diǎn)中的第一個(gè)子元素。

基本語法:
objFirstChild = xmlDocNode.firstChild;
說明:此屬性只讀且會(huì)傳回一對(duì)象,如果節(jié)點(diǎn)中沒有包含第一個(gè)子元素,將傳回null。
使用范例:
objFirstChild = xmlDoc.document.lement.firstChild;
alert(objFirstChild);


implementation 屬性
---------------------
DOM 應(yīng)用程式能使用其他實(shí)作中的對(duì)象。
implementation 屬性確認(rèn)目前XML 文件的DOMimplementation 對(duì)象

基本語法:
objImplementation = xmldocument.implementation;
說明:此屬性只讀且傳回一個(gè)對(duì)象。
使用范例:
objImp = xmlDoc.implementation;
alert(objImp);

lastChild 屬性
---------------
確認(rèn)目前節(jié)點(diǎn)中最后的子元素。

基本語法:
objLastChild = xmlDocNode.lastChild;
說明:此屬性只讀且傳回一個(gè)對(duì)象。如果節(jié)點(diǎn)中沒有包含最后子元素,將傳回null。
使用范例:
objLastChild = xmlDoc.document.lement.lastChild;
alert(objLastChild);

nextSibling 屬性
------------------
在目前文件節(jié)點(diǎn)的子節(jié)點(diǎn)列表中傳回下一個(gè)兄弟節(jié)點(diǎn)。

基本語法:
objNextSibling = xmlDocNode.nextSibling;
說明:此屬性是只讀且傳回一個(gè)對(duì)象。如果節(jié)點(diǎn)中沒有包含其他的相關(guān)節(jié)點(diǎn),會(huì)傳回null。
使用范例:
objSibling = xmlDoc.document.lement.childNodes.item(1).nextSibling;
alert(objSibling);

nodeName 屬性
---------------
傳回代表目前節(jié)點(diǎn)名稱的字符串。

基本語法:
strNodeName = xmlDocNode.nodeName ;
說明:傳回一個(gè)字符串。這個(gè)屬性是只讀的,傳回元素名稱、屬性或?qū)嶓w參照。
使用范例:
strNodeName = xmlDoc.document.lement.nodeName;
alert(strNodeName);

nodeType 屬性
---------------
辨識(shí)節(jié)點(diǎn)的DOM 型態(tài)。

基本語法:
numNodeType = xmlDocNode.nodeType;
說明:此屬性只讀且傳回一個(gè)數(shù)值。

有效的數(shù)值符合以下的型別:
1-ELEMENT
2-ATTRIBUTE
3-TEXT
4-CDATA
5-ENTITY REFERENCE
6-ENTITY
7-PI (processing instruction)
8-COMMENT
9-document.
10-document.nbsp;TYPE
11-document.nbsp;FRAGMENT
12-NOTATION
-------------------------------
使用范例:
numNodeType = xmlDoc.document.lement.nodeType;
alert(numNodeType);

nodevalue 屬性
-----------------
傳回指定節(jié)點(diǎn)相關(guān)的文字。
這并非一個(gè)元素中數(shù)據(jù)的值,而是和一個(gè)節(jié)點(diǎn)相關(guān)且未解析的文字,
就像一個(gè)屬性或一個(gè)處理指令。

基本語法:
varNodevalue = xmlDocNode.nodevalue;
說明:傳回的文字代表以節(jié)點(diǎn)的nodeType 屬性為主的型態(tài)值。
(請(qǐng)參考附錄中的nodeType 屬性。)
因?yàn)楣?jié)點(diǎn)型態(tài)可能是幾種數(shù)據(jù)型態(tài)中的一種,傳回值也因此有差異。
傳回null 的節(jié)點(diǎn)型態(tài)有:
document.ELEMENT、document.TYPE、document.FRAGMENT、
ENTITY、ENTITY REFERENCE,和NOTATION。
此屬性可擦寫。
使用范例:
varNodevalue = xmlDoc.document.lement.nodevalue;
alert(varNodevalue);

ondataavailable 屬性
---------------------
指定一個(gè)事件來處理ondataavailable 事件。
(更多關(guān)于ondataavailable 事件的信息,
請(qǐng)參閱附錄中<document對(duì)象事件>的部分)。

基本語法:
xmlDocNode.ondataavailable = value;
說明:此屬性是唯寫,允許文件作者一旦數(shù)據(jù)為可用,即可盡快的使用數(shù)據(jù)來運(yùn)作。
使用范例:
xmlDoc.ondataavailable = alert("Data is now available.");


onreadystatechange 屬性
------------------------
指定一個(gè)事件來處理onreadystatechange 事件。
這個(gè)事件能辨識(shí)readyState 屬性的改動(dòng)。

基本語法:
xmlDocNode.onreadystatechange = value;
說明:此屬性是唯寫的,允許文件作者指定當(dāng)readyState 屬性改動(dòng)時(shí)呼叫事件。
使用范例:
xmlDoc.onreadystatechange =
alert("The readyState property has changed.");


ownerdocument屬性
------------------------
傳回文件的根節(jié)點(diǎn),包含目前節(jié)點(diǎn)。


基本語法:
objOwnerDoc = xmldocument.ownerdocument.
說明:此屬性是只讀的,傳回一個(gè)包含文件根節(jié)點(diǎn)的對(duì)象,包含特定的節(jié)點(diǎn)。
使用范例:
objOwnerDoc = xmlDoc.childNodes.item(2).ownerdocument.
alert(objOwnerDoc);


parentNode 屬性
-----------------
傳回目前節(jié)點(diǎn)的父節(jié)點(diǎn)。只能應(yīng)用在有父節(jié)點(diǎn)的節(jié)點(diǎn)中。
 
基本語法:
objParentNode = xmldocument.ode.parentNode;
說明:此屬性是只讀的,傳回包含指定節(jié)點(diǎn)的父節(jié)點(diǎn)對(duì)象。
如果此節(jié)點(diǎn)不存在于文件樹中,將傳回null。
使用范例:
objParentNode = xmlDoc.childNodes.item(1).parentNode;
alert(objParentNode);


parseError 屬性
-----------------
傳回一個(gè)DOM 解析錯(cuò)誤對(duì)象,此對(duì)象描述最后解析錯(cuò)誤的訊息。

基本語法:
objParseErr = xmldocument.parseError;
說明:此屬性是只讀的。如果沒有錯(cuò)誤發(fā)生,將傳回0。
使用范例:
objParseErr = xmlDoc.parseError;
alert(objParseErr);


previousSibling 屬性
---------------------
傳回目前節(jié)點(diǎn)之前的兄弟節(jié)點(diǎn)。

基本語法:
objPrevSibling = xmldocument.previousSibling;
說明:傳回一個(gè)對(duì)象,這個(gè)屬性是只讀的。若該節(jié)點(diǎn)沒有包含前面的兄弟節(jié)點(diǎn),會(huì)傳回null。
使用范例:
objPrevSibling = xmlDoc.document.lement.childNodes.item(3).previousSibling
alert(objPrevSibling);


readyState 屬性
-------------------
傳回XML 文件資料的目前狀況。

基本語法:
intState = xmldocument.readyState;
說明:這個(gè)屬性是只讀的,
傳回值有以下的可能:
0-UNINITIALIZED:XML 對(duì)象被產(chǎn)生,但沒有所有文件被加載。
1-LOADING:加載程式進(jìn)行中,但文件尚未開始解析。
2-LOADED:部分的文件已加載且進(jìn)行解析,但對(duì)象模型尚未生效。
3-INTERACTIVE:僅對(duì)已加載的部分文件有效,在此情況下,對(duì)象模型是有效但只讀的。
4-COMPLETED:文件已完全加載,代表加載成功。
使用范例:
alert("The readyState property is " + xmlDoc.readyState);


url 屬性
---------------
傳回最近一次加載XML 文件的URL。

基本語法:
strDocUrl = xmldocument.url;
說明:這個(gè)屬性是只讀的,傳回最近一次加載成功文件的URL,
若文件僅存在主存儲(chǔ)器中(表示該文件并非由外部檔案加載),則傳回null
使用范例:
alert(xmlDoc.url);

validateOnParse 屬性
----------------------
告訴解析器文件是否有效。

基本語法:
boolValidate = xmldocument.validateOnParse;
xmldocument.validateOnParse = boolValidate;
說明:此屬性是可擦寫的。
如果傳回值為true,表示文件被解析時(shí)被確認(rèn)是有效的。
如果傳回false,表示文件是無效的,并被認(rèn)為只是標(biāo)準(zhǔn)格式的(well-formed)文件。
使用范例:
xmlDoc.validateOnParse = true;
alert(xmlDoc.validateOnParse);

xml 屬性
------------
傳回指定節(jié)點(diǎn)的XML 描述和所有的子節(jié)點(diǎn)。

基本語法:
xmlvalue = xmldocument.ode.xml;
說明:此屬性是只讀的。
使用范例:
xmlvalue = xmlDoc.document.lement.xml;
alert(xmlvalue);


以下列出關(guān)于document對(duì)象可用的方法。
1. abort
2. appendChild
3. cloneNode
4. createAttribute
5. createCDATASection
6. createComment
7. createdocument.ragment
8. createElement
9. createEntityReference
10. createNode
11. createProcessingInstruction
12. createTextNode
13. getElementsByTagName
14. hasChildNodes
15. insertBefore
16. load
17. loadXML
18. nodeFromID
19. parsed
20. removeChild
21. replaceChild
22. selectNodes
23. selectSingleNode
24. transformNode


abort 方法
-------------
abort 方法取消一個(gè)進(jìn)行中的異步下載。

基本語法:
xmldocument.abort();
說明:如果這個(gè)方法在異步下載時(shí)被呼叫,所有的解析動(dòng)作會(huì)停止,
而且在內(nèi)存中的文件會(huì)被釋放。


AppendChild 方法
------------------
加上一個(gè)節(jié)點(diǎn)當(dāng)作指定節(jié)點(diǎn)最后的子節(jié)點(diǎn)。

基本語法:
xmldocument.ode.appendChild(newChild);
說明:newChild 是附加子節(jié)點(diǎn)的地址。
使用范例:
docObj = xmlDoc.document.lement;
alert(docObj.xml);
objNewNode = docObj.appendChild(xmlDoc.document.lement.firstChild);
alert(docObj.xml);

cloneNode 方法
---------------
建立指定節(jié)點(diǎn)的復(fù)制。

基本語法:
xmldocument.ode.cloneNode(deep);
說明:deep 是個(gè)布爾值。
如果為true,此節(jié)點(diǎn)會(huì)復(fù)制以指定節(jié)點(diǎn)發(fā)展出去的所有節(jié)點(diǎn)。
如果是false,只有指定的節(jié)點(diǎn)和他的屬性被復(fù)制。
使用范例:
currNode = xmlDoc.document.lement.childNodes.item(1);
objClonedNode = currNode.cloneNode(1);
alert(objClonedNode.xml);


createAttribute 方法
------------------------
建立一個(gè)指定名稱的屬性。

基本語法:
xmldocument.createAttribute(name);
說明:name 是被建立屬性的名稱。
使用范例:
objNewAtt = xmlDoc.createAttribute("encryption");
alert(objNewAtt.xml);

createCDATASection 方法
------------------------
建立一個(gè)包含特定數(shù)據(jù)的CDATA。

基本語法:
xmldocument.createCDATASection(data);
說明:date 是個(gè)字符串,且包含了被置放在CDATA 的資料。
使用范例:
objNewCDATA = xmlDoc.createCDATASection("This is a CDATA Section");
alert(objNewCDATA.xml);


createComment 方法
-------------------
建立一個(gè)包含指定數(shù)據(jù)的批注。

基本語法:
xmldocument.createComment(data);
說明:data 是個(gè)字符串,且包含了被置放在批注的資料
使用范例:
objNewComment = xmlDoc.createComment("This is a comment");
alert(objNewComment.xml);


createdocument.ragment 方法
-----------------------------
建立一個(gè)空的文件片斷對(duì)象。

基本語法:
xmldocument.createdocument.ragment();
說明:一個(gè)新的文件片斷被建立,但沒有加到文件樹中。
要加入片斷到文件樹中,必須使用插入方法,
例如insertBefore、replaceChild 或 appendChild。
使用范例:
objNewFragment = xmlDoc.createdocument.ragment();
alert(objNewFragment.xml);

createElement 方法
--------------------
建立一個(gè)指定名稱的元素。

基本語法:
xmldocument.createElement(tagName);
說明:tagName 是個(gè)區(qū)分大小寫的字符串來指定新元素名稱。
使用范例:
objNewElement = xmlDoc.createElement("TO");
alert(objNewElement.xml);

createEntityReference 方法
-----------------------------
建立一個(gè)參照到指定名稱的實(shí)體。


基本語法:
xmldocument.createEntityReference(name);
說明:name 是個(gè)區(qū)分大小寫的字符串,來指定新實(shí)體參照的名稱。
一個(gè)新的實(shí)體參照被建立,不過并沒有被加到文件樹中。
若要將實(shí)體參照 加到文件樹中,必須使用一種插入方法,
例如:insertBefore,replaceChild,或appendChild。
使用范例:
objNewER = xmlDoc.createEntityReference("eRef");
alert(objNewER.xml);


createNode 方法
----------------------
建立一個(gè)指定型態(tài)、名稱,及命名空間的新節(jié)點(diǎn)。

基本語法:
xmldocument.createNode(type, name, nameSpaceURI);
說明:
type 用來確認(rèn)要被建立的節(jié)點(diǎn)型態(tài),
name 是個(gè)字符串來確認(rèn)新節(jié)點(diǎn)的名稱,命名空間的前綴則是選擇性的。
nameSpaceURI 是個(gè)定 義命名空間URI 的字符串。
如果前綴被包含在名稱參數(shù)中,此節(jié)點(diǎn)會(huì)在nameSpaceURI 的內(nèi)文中以指定的前綴建立。
如果不包含前綴,指定的命 名空間會(huì)被視為預(yù)設(shè)的命名空間。
使用范例:
objNewNode = xmlDoc.createNode(1,"TO","");
alert(objNewNode.xml);

createProcessingInstruction 方法
--------------------------------
建立一個(gè)新的處理指令,包含了指定的目標(biāo)和數(shù)據(jù)。

基本語法:
xmldocument.createProcessingInstruction(target, data);
說明:
target 是表示目標(biāo)、名稱或處理指令的字符串。
Data 是表示處理指令的值。
一個(gè)新的處理指令被建立,不過并沒有加到文件樹中。
要把處理指令加到文件樹中,必須使用插入方法,
例如:insertBefore、replaceChild,或是appendChild。
使用范例:
objNewPI = xmlDoc.createProcessingInstruction(‘XML’, ‘version="1.0"’);
alert(objNewPI.xml);


createTextNode 方法
------------------------
建立一個(gè)新的text 節(jié)點(diǎn),并包含指定的數(shù)據(jù)。

基本語法:
xmldocument.createTextNode(data);
說明:
data 是個(gè)代表新text 節(jié)點(diǎn)的字符串。
一個(gè)新的text 節(jié)點(diǎn)被建立,不過沒有加到文件樹中。
若要將節(jié)點(diǎn)加到文件樹中,必須使用插入 方法,
例如:insertBefore,replaceChild或appendChild。
使用范例:
objNewTextNode = xmlDoc.createTextNode("This is a text node.");
alert(objNewTextNode.xml);

getElementsByTagName 方法
-----------------------------
傳回指定名稱的元素集合。

基本語法:
objNodeList = xmldocument.getElementsByTagName(tagname);
說明:
tagname 是個(gè)字符串,代表找到的元素卷標(biāo)名稱。
使用tagname "*"傳回文件中所有找到的元素。
使用范例:
objNodeList = xmlDoc.getElementsByTagName("*");
alert(objNodeList.item(1).xml);


haschildnodes 方法
----------------------
如果指定的節(jié)點(diǎn)有一個(gè)或更多子節(jié)點(diǎn),傳回值為true。

基本語法:
boolvalue = xmldocument.ode.hasChildNodes() ;
說明:如果此節(jié)點(diǎn)有子節(jié)點(diǎn)傳回值為true,否則傳回false 值。
使用范例:
boolvalue = xmlDoc.document.lement.hasChildNodes();
alert(boolvalue);


insertBefore 方法
---------------------
在指定的節(jié)點(diǎn)前插入一個(gè)子節(jié)點(diǎn)。

基本語法:
objdocument.ode = xmldocument.ode.insertBefore(newChild,refChild);
說明:
newChild 是個(gè)包含新子節(jié)點(diǎn)地址的對(duì)象,
refChild 是參照節(jié)點(diǎn)的地址。
新子節(jié)點(diǎn)被插到參照節(jié)點(diǎn)之前。
如果refChild 參數(shù)沒有包含 在內(nèi),新的子節(jié)點(diǎn)會(huì)被插到子節(jié)點(diǎn)列表的末端。
使用范例:
objRefNode = xmlDoc.document.lement;
alert(xmlDoc.xml);
objNewNode = xmlDoc.createComment("This is a comment");
xmlDoc.insertBefore(objNewNode, objRefNode);
alert(xmlDoc.xml);


load 方法
--------------
表示從指定位置加載的文件。

基本語法:
boolvalue = xmldocument.load(url);
說明:
url 包含要被加載檔案的URL 的字符串。
如果文件加載成功,傳回值即為true。
若加載失敗,傳回值為false。
使用范例:
boolvalue = xmlDoc.load("Lst.xml");
alert(boolvalue);


loadXML 方法
----------------
加載一個(gè)XML 文件或字符串的片斷。

基本語法:
boolvalue = xmldocument.loadXML(xmlString);
說明:xmlString 是包含XML 文字碼的字符串。
這個(gè)字符串能包含整個(gè)文件或只是個(gè)文件片斷。
如果文件加載成功,傳回值為true。
如果加載失敗,傳回值則是false。
使用范例:
xmlString = "Hello!";
boolvalue = xmlDoc.loadXML(xmlString);
alert(boolvalue);


nodeFromID 方法
------------------
傳回節(jié)點(diǎn)ID 符合指定值的節(jié)點(diǎn)。

基本語法:
xmldocument.ode = xmldocument.nodeFromID(idString);
說明:
idString 是個(gè)包含ID 值的字符串。
符合的節(jié)點(diǎn)必定是ID 型態(tài)。
若符合,將傳回一個(gè)對(duì)象;若操作失敗,則傳回null。
使用范例:
objdocument.ode = xmlDoc.nodeFromID("TO");
alert(objdocument.ode);

parsed 方法
-------------
會(huì)驗(yàn)證該指定的節(jié)點(diǎn)(node)及其衍生的子節(jié)點(diǎn)(descendants)是否已被解析過。

基本語法:
boolvalue = xmldocument.ode.parsed();
說明:
如果全部的節(jié)點(diǎn)都已被解析過了,則傳回值為ture;
如果有所有一個(gè)節(jié)點(diǎn)尚未被解析,傳回值則為false。
使用范例:
currNode = xmlDoc.document.lement.childNodes.item(0);
boolvalue = currNode.parsed();
alert(boolvalue);


removeChild 方法
-------------------
會(huì)將指定的節(jié)點(diǎn)從節(jié)點(diǎn)清單中移除。

基本語法:
objdocument.ode = xmldocument.ode.removeChild(oldChild);
說明:oldChild 為一個(gè)包含要被移除的節(jié)點(diǎn)對(duì)象。
使用范例:
objRemoveNode = xmlDoc.document.lement.childNodes.item(3);
alert(xmlDoc.xml);
xmlDoc.document.lement.removeChild(objRemoveNode);
alert(xmlDoc.xml);


replaceChild 方法
--------------------
置換指定的舊子節(jié)點(diǎn)為提供的新子節(jié)點(diǎn)。

基本語法:
objdocument.ode = xmldocument.ode.replaceChild(newChild,oldChild);
說明:
newChild 為包含新子節(jié)點(diǎn)的對(duì)象。
如果此參數(shù)為null,則此舊子節(jié)點(diǎn)會(huì)被移除而不會(huì)被取代。
oldChild 為包含舊子節(jié)點(diǎn)的對(duì)象。
使用范例:
objOldNode = xmlDoc.document.lement.childNodes.item(3);
objNewNode = xmlDoc.createComment("Ive replaced the BCC element.");
alert(xmlDoc.xml);
xmlDoc.document.lement.replaceChild(objNewNode,objOldNode);
alert(xmlDoc.xml);


selectNodes 方法
--------------------
傳回所有符合提供樣式(pattern)的節(jié)點(diǎn)。

基本語法:
objdocument.odeList = xmldocument.ode.selectNodes(patternString);
說明:
patternString 為一包含XSL 樣式的字符串。
此方法會(huì)傳回節(jié)點(diǎn)清單對(duì)象,包含符合樣式的節(jié)點(diǎn)。
如果沒有符合的節(jié)點(diǎn),則傳回空的清單列表。
使用范例:
objNodeList=xmlDoc.selectNodes("/");
alert(objNodeList.item(0).xml);


selectSingleNode 方法
--------------------------
傳回第一個(gè)符合樣式的節(jié)點(diǎn)。

基本語法:
objdocument.ode = xmldocument.ode.selectSingleNode(patternString);
說明:
patternString 為一包含XSL 樣式的字符串。
此方法會(huì)傳回第一個(gè)符合的節(jié)點(diǎn)對(duì)象,如果沒有符合的節(jié)點(diǎn),則傳回null。
使用范例:
objNode = xmlDoc.selectSingleNode("EMAIL/BCC");
alert(objNode.xml);


transformNode 方法
----------------------
使用提供的樣式表來處理該節(jié)點(diǎn)及其子節(jié)點(diǎn)。

基本語法:
strTransformeddocument= xmldocument.ode.transformNode(stylesheet);
說明:
stylesheet 為一XML 文件或是片斷包含負(fù)責(zé)節(jié)點(diǎn)轉(zhuǎn)換工作的XSL 元素。
此方法會(huì)傳回一包含轉(zhuǎn)換結(jié)果的字符串。

使用范例:
var style = new ActiveXObject("Microsoft.XMLDOM");
style.load("Lst.xsl");
strTransform = xmlDoc.transformNode(style.document.lement);
alert(strTransform);

Document 對(duì)象的事件

下面列出來的是document對(duì)象可用的事件:
1. Ondataavailable
2. Onreadystatechange


Ondataavailable 事件
----------------------
此事件會(huì)在XML 文件有效時(shí)被觸發(fā)。

基本語法:
此一事件有下面三種處理方式
. Inline:;
. Event property:object.ondataavailable = handler;
. Named script:

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 毛片在线看免费 | 欧美日韩在线免费观看 | 亚洲91网 | 一级做a爱片毛片免费 | 欧洲成人av | 久久亚洲国产午夜精品理论片 | 高清一区二区在线观看 | 欧美日韩视频网站 | 精品av在线播放 | 综合激情网 | 日韩精品久久久久久 | 日本一区二区不卡在线观看 | 男女羞羞在线观看 | 成人在线视频精品 | 国产亚洲综合一区二区 | 中文字幕综合 | 日韩视频在线不卡 | 久久久久久久一区二区 | 免费毛片免费看 | 丰满年轻岳中文字幕一区二区 | 国产91中文字幕 | 亚洲成人精品在线 | 成人偷拍片视频在线观看 | 久久精品视频黄色 | 九九精品在线观看视频 | 色婷婷a v| 91精品国产综合久久久动漫日韩 | 国产成人高清成人av片在线看 | 91avsese| 成年人免费黄色片 | 亚洲国产精久久久久久久 | 久久亚洲网 | 免费久久久久 | av日韩一区二区三区 | 亚洲欧美日韩一区二区三区在线观看 | sm高h视频| 成人午夜免费看 | 草免费视频 | 国产亚洲精品久久久久久大师 | 日本教室三级在线看 | 国产激爽大片在线播放 |