为什么在使用文件时xml解析在JQuery中不起作用?

时间:2016-01-10 06:21:37

标签: jquery xml html5 parsing

我想解析运行html文件时存在同一目录的xml文件。但是当我使用“data.xml”时它没有给出任何响应。我该如何解决这个问题?

我的XML文件:

<?xml version="1.0" encoding="utf-8"?>
<Infos>
<Info name="Stephen" mail="example@gmail.com"/>
</Infos>

我的代码:

<script src="http://code.jquery.com/jquery-2.2.0.min.js"></script>
<script>
    $(document).ready(function () {
        $(".button").click(function () {
            var xml = "/data.xml"; //How to set path this line?
            xmlDoc = $.parseXML(xml);
            $xml = $(xmlDoc);
            $title = $xml.find("Info");

            alert($title.text());
        });
    });
</script>

1 个答案:

答案 0 :(得分:2)

var xml = "/data.xml";创建String "/data.xml",不在文件系统位置/data.xml请求文件

另请注意,.textContent元素Info似乎没有定义alert( $title.text() );警告空字符串。

尝试使用$.ajax()从文件系统请求文件;在$.parseXML()

中移除jQuery()换行回复
$(document).ready(function () {
    $(".button").on('click', function () {
        var xml = "/data.xml"; //How to set path this line?

        $.ajax({
            url : xml, 
            dataType : "xml"
        }).done(function(xmlDoc) {

            var $title = $(xmlDoc).find("Info");
            // alert( $title.text() );

        }).fail(function(jqxhr, textStatus, errorThrown) {
             console.log(errorThrown)
        });
    });
});