2013-07-12 138 views
0

我有一個XML文件和HTML下htdocs的我已經在我的機器本地設置的Apache。無法使用jQuery讀取XML文件

我試圖讀取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> 
+1

你有沒有嘗試添加錯誤處理程序到你的$就要求用警惕看什麼回來? – dSquared

+0

@dSquared感謝您的想法。我試過了,得到這個:[Exception ...「」nsresult:「0x805e0006()」location:「JS frame :: http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery .min.js :: .send :: line 6「data:no] – Crocode

+0

聽起來像是一個跨域問題,是與腳本調用它在同一個域的同一個端口上的XML文件嗎? – dSquared

回答

0

首先,作爲DSQUARED指出,檢查哪些又回到了你的要求 - 我建議裏面broswer,在這裏你可以看到每一個請求和響應索姆開發工具。

如果沒有具有無效的文件名沒有區別,請檢查您的路徑 - 你是真的"feedTest.xml"在同一目錄與腳本的網頁?

+0

是的,我可以從瀏覽器的相同位置訪問feedTest.xml。 – Crocode

+0

你在瀏覽器中使用AdBlock嗎? – betatester07

+0

對不起。現在正在工作。我認爲這與編輯有關。我早些時候在文件上做了「另存爲」。現在我關閉了它。它開始工作。謝謝 – Crocode

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); 
     } 

....