当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 使用jQuery的ajax功能实现的RSS Reader 代码

Javascript
阻止JavaScript事件冒泡传递(cancelBubble 、stopPropagation)
(转载)JavaScript中匿名函数,函数直接量和闭包
简单的无缝滚动程序-仅几行代码
Javascript中的数学函数集合
javascript之大字符串的连接的StringBuffer 类
javascript之对系统的toFixed()方法的修正
用javascript实现自定义标签
js在客户端验证密码强度,兼容FireFox和IE
javascript背景颜色按时变换
脚本分析、压缩、混淆工具 JSA新版本发布,压缩效率提高大约10%
javascript语句中的CDATA标签的意义
用javascript实现分割提取页面所需内容
网上抓的一个特效
js之点击 超连接,提示一个层.点击空白.层消失
模拟用户操作Input元素,不会触发相应事件
弹出广告特效代码(一个IP只弹出一次)
(仅IE下有效)关于checkbox 三态
JavaScript Archive Network 集合
关于__defineGetter__ 和__defineSetter__的说明
textContent在Firefox下与innerText等效的属性

Javascript 中的 使用jQuery的ajax功能实现的RSS Reader 代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 486 ::
收藏到网摘: n/a

Rss阅读器挺不错的。我觉得如果在igoogle或是dropthings这种形式的portal下来放很多RSS模块显示自己每天需要关注的信息那将会减少大家很多的打开浏览器和输入网址的时间。

先看看效果来着:

首先需要一个ascx页面通过一个XDocument把rss源的内容绑定到一个ListView上。代码如下:

复制代码 代码如下:

protected void Page_Load(object sender, EventArgs e)
{
// For demo purposes.
System.Threading.Thread.Sleep(1000);
XDocument feedXML =
XDocument.Load("http://feeds.feedsky.com/csdn.net/dujingjing1230");
var feeds = from feed in feedXML.Descendants("item")
select new
{
Title = feed.Element("title").Value,
Link = feed.Element("link").Value,
Description = feed.Element("description").Value
};
PostList.DataSource = feeds;
PostList.DataBind();
}

复制代码 代码如下:

<asp:ListView runat="server" ID="PostList">
<LayoutTemplate>
<ul>
<asp:PlaceHolder runat="server" ID="itemPlaceholder" />
</ul>
</LayoutTemplate>
<ItemTemplate>
<li><a href='<%# Eval("Link") %>'><%# Eval("Title") %></a><br />
<%# Eval("Description") %>
</li>
</ItemTemplate>
</asp:ListView>

接下来需要创建一个aspx页面来显示RSS内容,当然这个页面中就使用了jQuery的AJAX来得到上面的数据。
HTML页面代码:

实现ajax功能的js:
复制代码 代码如下:

$(document).ready(function() {
$.ajax({
type: "POST",
url: "RSSReader.asmx/GetRSSReader",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
$('#RSSContent').removeClass('loading');
$('#RSSContent').html(msg.d);
}
});
});

最后是RSSReader.asmx这个web Services的内容:
复制代码 代码如下:

public class RSSReader : System.Web.Services.WebService {
[WebMethod]
public string GetRSSReader()
{
Page page = new Page();
UserControl ctl =
(UserControl)page.LoadControl("~/RSSReaderControl.ascx");
page.Controls.Add(ctl);
StringWriter writer = new StringWriter();
HttpContext.Current.Server.Execute(page, writer, false);
return writer.ToString();
}
}

页面中还有用到一个图片这里就不上传了。
代码下载:
/upload/tech/20091012/20091012100551_357a6fdf7642bf815a88822c447d9dc4.rar