使用JavaScript函数导入XML

时间:2018-05-05 18:46:10

标签: javascript html xml

我有一个面板,点击后会打开并显示数据。我想让数据来自XML文件。

我用来显示html文本的JavaScript函数工作正常,所以我试图使用该函数,但修改它以从另一个文件中引入XML。

JS文件中的JavaScript函数:

function nameFunction () {document.querySelector("#collapse1> .panel-body").innerHTML = "Name works"};

XML文件中的XML

<dashboard>
    <name>name goes here</name>
</dashboard>

调用JS函数的html文件:

<a data-toggle="collapse" href="#collapse1" onClick="nameFunction()" >Name</a>

.innerHTML方法可以用于此任务吗?如果是这样,有人可以提供一个例子吗?

3 个答案:

答案 0 :(得分:0)

   function nameFunction () {
        var xmlText = "<dashboard>"+
            "<name>name goes here</name>"+
            "</dashboard>";
        var parser = new DOMParser();
        var xmlDoc = parser.parseFromString(xmlText,"text/xml");
        document.querySelector("#collapse1 > .panel-body").innerHTML = xmlDoc.getElementsByTagName("name")[0].childNodes[0].nodeValue;
    }
希望这可以帮到你! (这有效)

答案 1 :(得分:0)

        function nameFunction (){
            var xhttp;
            if (window.XMLHttpRequest) { // Create an instance of XMLHttpRequest object. 
                //code for IE7+, Firefox, Chrome, Opera, Safari
                xhttp  =  new XMLHttpRequest();
            } else { // code for IE6, IE5 
               xhttp  =  new ActiveXObject("Microsoft.XMLHTTP");
            }
            xhttp.open("GET", "data.xml", false);
            xhttp.send();
            var xmlDoc = xhttp.responseXML;
            document.querySelector("#collapse1 > .panel-body").innerHTML = xmlDoc.getElementsByTagName("name")[0].childNodes[0].nodeValue;
        }

这适用于firefox,(不是在chrome-chrome中我没有使用XMLHttpRequest API) so now you can parse xml file

答案 2 :(得分:0)

您可以使用脚本标记导入文件。

<script id="xml" type="notjs" src="XX.xml"></script>

var xml = document.getElementById(&#34; xml&#34;);

这是你想要的吗?