0

我在我的机器上本地设置的 apache 的 htdocs 下有一个 XML 文件和一个 HTML。

我正在尝试读取该 xml 文件,但没有收到任何响应。它甚至没有提醒状态。此外,如果我给出无效的文件名,它不会显示任何区别。xml 文件有效。谁能告诉我我在哪里失踪。

<script>

$(document).ready(function(){
    console.log('hey');
    $.ajax({
    type: "GET",
    url: "feedTest.xml",
    cache: false,
    dataType: "xml",
    success: function(xml){
        alert(status);
        }

    });
$("#output").append("Some Text");
});   

function parseXML(xml){
    $(xml).find("mainPage").each(function(){
        console.log("I'm in");
        $("#output").append($(this).attr("time") + "<br/>");
    });
}
</script>
<body>
<div id="output">
    Hello
</div>

XML 文件:

<?xml version="1.0"?>
<!-- 
Comments
 -->

<dashboard>
<mainPage time="20">
    <horizontal>2</horizontal>
    <vertical>3</vertical>
    <loop set="true"></loop>
    <files>
        <name time="10">a</name>
        <name time="10">b</name>            
    </files>
</mainPage> 
</dashboard>
4

2 回答 2

0

首先,正如 dSquared 所指出的,检查返回到您的请求的内容 - 我建议在 broswer 中使用 som 开发人员工具,您可以在其中查看每个请求和响应。

如果无效文件名没有区别,请检查您的路径 - 您是否"feedTest.xml"真的与您的脚本所在页面位于同一目录中?

于 2013-07-12T22:30:57.023 回答
0
$(document).ready(function(){

    $.ajax({
    type: "GET",
    url: "feedTest.xml",
    cache: false,
    dataType: "xml",
    success: function(xml){


    $(xml).find("mainPage").each(function(){
        console.log("I'm in");
        $("#output").append($(this).attr("time") + "<br/>");
    });


        }

    });

});   

function parse xml 是多余的,它在成功处理程序之外(没有被调用)。编辑:您可以以这种方式使用它,但是:

......

success: function(xml){
        alert(status);
        parseXML(xml);
        }

……

于 2013-07-12T22:41:59.713 回答