2011-06-09 30 views
1

我試着每10秒獲得一次xml feed,或者將新的xml feed添加到現有的顯示結果中。有人能告訴我如何使用ajax和json回調來做到這一點。xml jquery ajax json polling

此外,如果我想更進一步,並希望通過分解爲每頁5個結果來分頁,我該如何做?

如果有人能告訴我一些工作的例子將是真正偉大

我的代碼如下..請隨意擴大

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Jquery Xml Ajax</title> 
<script language="javascript" src="jquery.js"></script> 
<script language="javascript"> 

$(document).ready(function() { 

    $.ajax({ 
      type:"GET", 
      url:"sample-xml-feed.xml", 
      dataType:"xml", 
      success:parseXml 

      });      
          }); 

    function parseXml (xml) { 

     $(xml).find("Tutorial").each(function() { 

     $("#output").append($(this).attr("author") +"<br/>")       

            }); 


    } 

</script> 
<body> 
<div id="output"></div> 
</body> 
</html> 


XML BIT below 
<?xml version="1.0" encoding="utf-8"?> 
<RecentTutorials> 
    <Tutorial author="The Reddest"> 
    <Title>Silverlight and the Netflix API</Title> 
    <Categories> 
     <Category>Tutorials</Category> 
     <Category>Silverlight 2.0</Category> 
     <Category>Silverlight</Category> 
     <Category>C#</Category> 
     <Category>XAML</Category> 
    </Categories> 
    <Date>1/13/2009</Date> 
    </Tutorial> 
    <Tutorial author="The Hairiest"> 
    <Title>Cake PHP 4 - Saving and Validating Data</Title> 
    <Categories> 
     <Category>Tutorials</Category> 
     <Category>CakePHP</Category> 
     <Category>PHP</Category> 
    </Categories> 
    <Date>1/12/2009</Date> 
    </Tutorial> 
    <Tutorial author="The Tallest"> 
    <Title>Silverlight 2 - Using initParams</Title> 
    <Categories> 
     <Category>Tutorials</Category> 
     <Category>Silverlight 2.0</Category> 
     <Category>Silverlight</Category> 
     <Category>C#</Category> 
     <Category>HTML</Category> 
    </Categories> 
    <Date>1/6/2009</Date> 
</Tutorial> 
    <Tutorial author="The Fattest"> 
    <Title>Controlling iTunes with AutoHotkey</Title> 
    <Categories> 
     <Category>Tutorials</Category> 
     <Category>AutoHotkey</Category> 
    </Categories> 
    <Date>12/12/2008</Date> 
    </Tutorial> 
</RecentTutorials> 

回答

0

有關運行setInterval()內的AJAX請求是什麼?

setInterval(function() { 
    $.ajax({ 
     type:"GET", 
     url:"sample-xml-feed.xml", 
     dataType:"xml", 
     success:parseXml 
    }); 
}, 10000); // 10 seconds 

對於分頁您的parseXml()功能應該照顧的邏輯。在某個地方保留一個計數器變量,並在第五個結果append到達一個新的容器並重置計數器。

+0

難道你碰巧有一個例子,我可以如何繼續添加下5個項目到現有的結果?謝謝 – user244394 2011-06-09 18:36:53

+0

,除非你付錢給我做你的工作 – 2011-06-09 19:54:58