验证XML文件的合法性只限IE

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
var xt = "",
h3OK = 1
 
function checkErrorXML(x) {
    xt = ""
    h3OK = 1
    checkXML(x)
}
 
function checkXML(n) {
    var l, i, nam
        nam = n.nodeName
    if (nam == "h3") {
        if (h3OK == 0) {
            return;
        }
        h3OK = 0
    }
    if (nam == "#text") {
        xt = xt + n.nodeValue + "\n"
    }
    l = n.childNodes.length
    for (i = 0; i < l; i++) {
        checkXML(n.childNodes[i])
    }
}
 
function validateXML(txt) {
    // code for IE
    if (window.ActiveXObject) {
        var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
        xmlDoc.async = false;
        xmlDoc.loadXML(document.all(txt).value);
 
        if (xmlDoc.parseError.errorCode != 0) {
            txt = "Error Code: " + xmlDoc.parseError.errorCode + "\n";
            txt = txt + "Error Reason: " + xmlDoc.parseError.reason;
            txt = txt + "Error Line: " + xmlDoc.parseError.line;
            alert(txt);
        } else {
            alert("没有找到错误!");
        }
    }
    // code for Mozilla, Firefox, Opera, etc.
    else if (document.implementation.createDocument) {
        var parser = new DOMParser();
        var text = document.getElementById(txt).value;
        var xmlDoc = parser.parseFromString(text, "text/xml");
 
        if (xmlDoc.getElementsByTagName("parsererror").length > 0) {
            checkErrorXML(xmlDoc.getElementsByTagName("parsererror")[0]);
            alert(xt)
        } else {
            alert("没有找到错误!");
        }
    } else {
        alert('您的浏览器不支持 XML 验证器');
    }
}I

  

posted @   奥兰王子  阅读(60)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期
· 全程使用 AI 从 0 到 1 写了个小工具
· 从文本到图像:SSE 如何助力 AI 内容实时呈现?(Typescript篇)
点击右上角即可分享
微信分享提示