国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

JavaScript高級程序設計 閱讀筆記(二十一) JavaScript中的XML

2024-05-06 14:21:14
字體:
來源:轉載
供稿:網友
一、IE中的XML DOM支持
  IE對XML的支持是基于ActiveX的MSXML庫。
  1、DOM創建
  對每個新版本的MSXML,都會創建出不同的XML DOM對象,所以盡量選擇新的XML DOM版本。
  2、載入XML
  載入XML分兩種,即:
  載入XML字符串:loadXML(xml字符串)
  載入xml文件:load(xml文件路徑)。默認情況下文件載入是異步的,如果要改為同步把asynce特性改為true即可。異步載入文件時要用到readyState和onreadystatechange事件處理函數。readyState共有五種可能的值:
    0——DOM尚未初始化任何信息;
    1——DOM正在載入數據;
    2——DOM完成了數據載入;
    3——DOM已經可用,不過某些部分可能還不能用;
    4——DOM已經完全被載入,可以使用了。
  3、獲取XML
  微軟為每個節點增加了xml特性,所以獲取XML非常方便,見后面的示例。
  4、解釋錯誤
  可以用parseError來處理XML載入過程中出現的錯誤。
  parseError特性實際上是包含以下特性的對象:
  errorCode:錯誤類型數字代碼,沒有錯誤為0
  filePos:錯誤發生在文件中的位置
  line:遇到錯誤的行號
  linepos:在遇到錯誤的那一行上的字符的位置
  reason:對錯誤的一個解釋
  srcText:造成錯誤的代碼
  url:造成錯誤的文件的URL
  5、示例:
代碼如下:
function createXMLDOM(){
var arrSignatures=["MSXML2.DOMDocument.5.0","MSXML2.DOMDocument.4.0","MSXML2.DOMDocument.3.0","MSXML2.DOMDocument","Microsoft.XmlDom"];
for(var i=0;i<arrSignatures.length;i++){
try{
var oXmlDom=new ActiveXObject(arrSignatures[i]);
return oXmlDom;
} catch(oError){
}
}
throw new Error("MSXML is not installed on your system");
}
var oXmlDom=createXMLDOM();
//方式一:加載字符串
oXmlDom.loadXML("<root><child/></rot>");
//處理錯誤
if(oXmlDom.parseError != 0){
var oError=oXmlDom.parseError;
alert("An Error occurred:/nError Code:" + oError.errorCode
+ "/nLine:" + oError.line + "/nLine Pos:" + oError.linepos
+ "/nReason:" + oError.reason);
} else {
var childNodes=oXmlDom.documentElement.childNodes;
console.log(childNodes.length+" "+childNodes[0].xml);// 1 <child/>
}
//方式二:加載XML文件
oXmlDom.onreadystatechange = function(){
//文檔加載完畢
if(oXmlDom.readyState == 4){
if(oXmlDom.parseError != 0){
var oError=oXmlDom.parseError;
alert("An Error occurred:/nError Code:" + oError.errorCode
+ "/nLine:" + oError.line + "/nLine Pos:" + oError.linepos
+ "/nReason:" + oError.reason);
} else {
var childNodes=oXmlDom.documentElement.childNodes;
console.log(childNodes.length+" "+childNodes[0].xml);// 1 <child/>
}
}
}
oXmlDom.load("test.xml");
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 峨眉山市| 临澧县| 中宁县| 凌海市| 油尖旺区| 信阳市| 额济纳旗| 江口县| 巴里| 南宁市| 临城县| 盐城市| 卫辉市| 弥渡县| 郯城县| 萨嘎县| 航空| 高雄市| 秦安县| 彩票| 财经| 临汾市| 安泽县| 巴青县| 班戈县| 渑池县| 靖宇县| 临西县| 酒泉市| 信宜市| 桐乡市| 福泉市| 化德县| 丹棱县| 徐水县| 来凤县| 卓尼县| 鹤岗市| 石首市| 荥阳市| 合江县|