2011-10-02 21 views
0

我知道這已被問過,但我無法弄清楚什麼是錯的,我試圖加載一個XML文件與使用jQuery的節目列表,以便節目可以在一個文件中更新,並上傳到多個頁面。對我來說,似乎我做的一切都是正確的,但我的知識jquery充其量是脆弱的。大部分內容都是從其他問題的答案拼湊而成。使用jquery獲取XML並將其放入html表

我的HTML

<aside id="shows"class="aside shadow"> 
<div class="text" id="table"> 
<div class="more low"> MORE SHOWS </div> 
<div class="less"> LESS SHOWS </div> 
</div> 
</aside> 

我的Jquery

function showData() { 
$.ajax({ 
    type: "GET", 
    url: "shows.xml", 
    dataType: "xml", 
    success: function getShows(a) { 
    $('#table').append('<h2>SHOWS</h2>'); 
    $('#table').append('<table>'); 

    $(a).find('show').each(function(){ 
     var $show = $(this); 
     var date = $show.find('date').text(); 
     var place = $show.find('place').text(); 
     var location = $show.find('location').text(); 
     var time = $show.find('time').text(); 

     var html = '<tr><td class="bold">' + date + '</td><td class="hide">' + place + '</td><td>' + location + '</td><td class="bold">' + time + '</td></tr></table>'; 

     $('<table>').append(html); 

    }); 
    } 
}); 
} 

和XML

<shows> 
<show> 
    <date>9/8</date> 
    <place>Toads Place</place> 
    <location>New Haven, CT</location> 
    <time>9PM</time> 
</show> 

</shows> 

這什麼也不做 這完全看我的權利,所以我超級困惑。瞭解我,我錯過了一個半結腸。 > <

謝謝!!

+0

是否包含jQuery的? – mowwwalker

+0

我確實包括jQuery – Jay

+0

什麼意思,什麼都沒有發生?打開你的控制檯,看看它是否有任何說明。 ctrl + shift + j與鉻,ctrl + f4與Firefox,alt + f4與Ie – mowwwalker

回答

0

嘗試把確切的網址...

url: "shows.xml", 

... 也許shows.xml不超過Jquery的AJAX功能

+0

它是在同一個文件夾,但我試圖把確切的網址,並沒有幫助:(。謝謝,雖然!!! – Jay

+0

你是對的,我不知道爲什麼把整個網址沒有工作,但shows.xml是在錯誤的文件夾!!! – Jay

+0

@jay好吧,但請打勾我:D –

0

,你能否證實了相同的文件夾ajax調用正常工作,並調用成功方法。
您可以檢查ajax調用和螢火蟲上的響應。
如果xml返回正常,您可以嘗試以下方法,修改成功方法,例如, http://jsfiddle.net/Jayendra/2PFxr/

嘗試 -

$.ajax({ 
    type: "GET", 
    url: "shows.xml", 
    dataType: "xml", 
    success: function(xml){ 
     $('#table').append('<h2>SHOWS</h2>'); 
     $('#table').append('<table id="show_table">'); 
     $(xml).find('show').each(function(){ 
      var $show = $(this); 
      var date = $show.find('date').text(); 
      var place = $show.find('place').text(); 
      var location = $show.find('location').text(); 
      var time = $show.find('time').text(); 
      var html = '<tr><td class="bold">' + date + '</td><td class="hide">' + place + '</td><td>' + location + '</td><td class="bold">' + time + '</td></tr>'; 
      $('#show_table').append(html); 
     }); 
    } 
}); 
+0

什麼時候調用showdata方法?否則,您可以將ajax調用直接放在文檔上,就像小提琴示例一樣,然後調試ajax calls。 – Jayendra

+0

非常感謝!!!!!我想出瞭如何檢查Firebug中的ajax調用,並且它幫助我發現A.Quiroga是正確的,因爲shows.xml無法找到!是的,因爲不應該在那裏><。我將從現在開始在螢火蟲ALOT上使用.net的東西,所以將來的感謝,我可能看起來超級笨拙。 – Jay

相關問題