⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 16-3 xml文件的异步载入.htm

📁 JAVASCRIPT完全自学手册,中源码的验证修订实例
💻 HTM
字号:
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=GB2312" />
<title>16-3  XML文件的异步载入</title>
<style>
* { font-size:12px; font-family:宋体, Arial; } /*规定了所有的字体样式*/
body { overflow:auto; }
#hutia { font-size:14px; font-weight:bold; color:white; font-family:Arial, 宋体; background-color:#6090DA; padding:4px 10px; }
</style>
<script>
var xml;
//函数“$”根据指定字符串获取相应ID的对象
function $(str){ return(document.getElementById(str)); }
//窗体载入完毕时初始化
window.onload = function(){
    xml = new ActiveXObject("Microsoft.XMLDOM");
    //设置异步载入
    xml.async = true;
    //绑定事件
    xml.onreadystatechange = xml_onreadystatechange;
    xml.ondataavailable = xml_ondataavailable;
    //载入指定位置的XML文件
    xml.load("\\\\192.168.1.151\\F$\\hutia\\book\\JavaScript入门到精通\\代码\\inc\\data\\16-1.xml");
}

//当XML控件状态改变时调用此函数
function xml_onreadystatechange(){
    var obj, err, str;
    //记录当前xml控件的状态
    str = "[状态改变]状态字为:" + xml.readyState + ",当前XML已解析的长度为:" + String(xml.xml).length;
    //如果载入完成
    if(xml.readyState == 4){
        //判断是否存在载入错误
        err = xml.parseError;
        if (err.errorCode != 0){
            //如果载入失败,输出失败原因
            str += "<BR>载入失败,因为:" + err.reason;
        }else{
            //如果载入成功,输出XML文本长度
            str += "<BR>载入成功完成, 文件长度为:" + String(xml.xml).length;
        }
    }
    //生成用于输出的div对象
    obj = document.createElement("div");
    $("hutia").appendChild(obj);
    //完成输出信息
    obj.innerHTML = str;
}

//当XML数据可用时调用此函数
function xml_ondataavailable(){
    var obj, err, str;
    //记录当前xml控件的状态
    str = "[数据可用]状态字为:" + xml.readyState + ",当前XML已解析的长度为:" + String(xml.xml).length;
    //生成用于输出的div对象
    obj = document.createElement("div");
    $("hutia").appendChild(obj);
    //完成输出信息
    obj.innerHTML = str;
}

</script>
</head>
<body>
<div id="hutia">
</div>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -