2011-04-07 66 views
0

我想显示使用jQuery插件jFeed rss饲料如下。它的打印警报(“OK”),但它不是(从除调用页面不同的域)显示Feed标题alert(feed.title);无法检索饲料使用jFeed

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<script type="text/javascript" src="javascript/jquery.js"></script> 
<script type="text/javascript" src="javascript/jquery.jfeed.js"></script> 



<script type="text/javascript"> 
$(document).ready(function(){ 
alert('ok'); 
$.getFeed({ 
    url: 'http://feeds.nytimes.com/nyt/rss/Technology', 
    success: function(feed) { 
     alert(feed.title); 
    } 
}); 

}); 

</script> 
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
<title>Insert title here</title> 
</head> 
<body> 
<div id="main"> 

</div> 
</body> 
</html> 

回答

2

不能加载外部饲料。从档案中提供

例子插件页面

报价, 以及基本的PHP代理(仅测试 目的),用于加载外部 饲料。

有束中的proxy.php文件。

使用它。


使用所提供的代理,你需要做的

$.getFeed({ 
    url: '/local-path-to-proxy/proxy.php', 
    data: {url:'http://feeds.nytimes.com/nyt/rss/Technology'}, 
    success: function(feed) { 
     alert(feed.title); 
    } 
}); 

调整路径代理文件相应

+0

随着该proxy.php我们可以从不同获得饲料域。 – JavaGeek 2011-04-07 18:55:45

+0

@Sukumar,是的。这是代理人的观点。浏览器不允许跨域的Ajax请求(*除非格式是JSONP *)。但是,您可以使用服务器端技术(*在本例中为*,如php)从远程位置获取数据并将其发送到ajax请求。已更新答案中的使用示例。 – 2011-04-07 19:17:32

+0

非常感谢。现在我懂了。它显示警报窗口但不显示任何东西。浏览器中是否有任何东西被阻塞? – JavaGeek 2011-04-07 19:28:05