12.6 显示频道内容功能 (征服ASP.NET 2.0 Ajax——Web开发技术详解)

本文主要是介绍12.6 显示频道内容功能 (征服ASP.NET 2.0 Ajax——Web开发技术详解),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

-----------http://book.csdn.net/bookfiles/305/10030512728.shtml 

12.6  显示频道内容功能

获取频道的内容主要是根据频道的地址,然后使用XMLHttpRequest对象从网络获取数据,返回字符串或者XML数据。本节就介绍如何显示频道的内容。

12.6.1  从网络获取频道的内容

从网络读取数据,需要先向网络请求频道的内容。创建请求的步骤如下:

(1)在显示频道列表时,使用了读取频道内容的方法“loadContent”,当时没有设计代码,现在实现这个方法的代码,如清单12-12所示。其中设计了一段提示代码,当系统数据没有加载完成时,出现提示如图12-10所示。

代码清单12-12  读取内容的方法

    //加载rss内容的方法

    function loadContent(url)

    {

        //提示信息

        document.getElementById("rsscontent").innerHTML="请稍候,正在加载.......";

        //创建异步对象

        createXMLHttp();

           //判断异步对象状态的方法

           xmlhttp.onreadystatechange=viewContent;

           //加载服务器页并发送数据请求-url为用户选择的rss频道路径

           xmlhttp.open("GET",url,true);

           xmlhttp.send(null);

    }

图12-10  频道未加载完时的等待效果图

(2)上述代码中使用了创建XMLHttpRequest对象的方法“createXMLHttp”,此方法的代码如下:

    var xmlhttp;

    function createXMLHttp()

    {

           //未考虑除IE外其他浏览器-创建异步对象

           xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");

    }

(3)由于本示例属于动态内容,所以没有任何数据库和服务端处理的代码。按“Ctrl+S”保存读取的代码。对于状态的判断以及客户端的显示,将在下一节介绍。

12.6.2  显示频道内容

当网络请求完成并且成功后,需要设置显示内容的div,一是要将内容显示在div中,二是要设置显示的格式,本例的格式在前期定义样式表时已经完成,此处没有变化。实现显示频道内容功能的步骤如下:

(1)打开Default.aspx页。

(2)在HTML源代码中XMLHttpRequest对象的状态判断方法“FillList”,代码如清单12-13所示。

代码清单12-13  显示内容的方法

    //显示div内容的方法

    function FillList( listdom)

    {

         var str="";

         var list=new Array();

         list=listdom.getElementsByTagName("item");

         //本例使用字符串的形式将内容连接,也可使用DOM创建元素的形式

          for(var i=0;i<list.length;i++)

          {

                //显示名称

                var sondom=list[i].childNodes;

                var name,link,desc;

                for(var j=0;j<sondom.length;j++)

                {

                   if(sondom[j].nodeName=="title")

                   {

                      name=sondom[j].nodeTypedValue;

                   }

                   else if(sondom[j].nodeName=="link")

                   {

                      link=sondom[j].nodeTypedValue;

                   }

                   else if(sondom[j].nodeName=="description")

                   {

                      desc=sondom[j].nodeTypedValue;;

                   }

                }

                str= str +"<a href='" +link+ "'>" +name+"</a> <br />";

               //显示描述信息me

                str=str+"<p>"+desc+"</p><br />";

          }

          //在div中显示

          document.getElementById("rsscontent").innerHTML=str;

    }

(3)按“Ctrl+S”保存代码的设计。

此时全部的功能已经设计完毕,按F5运行程序,单击频道列表中的某项,查看频道的内容,效果如图12-11所示。

图12-11  频道列表的内容显示效果图

这篇关于12.6 显示频道内容功能 (征服ASP.NET 2.0 Ajax——Web开发技术详解)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/783378

相关文章

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

第10章 中断和动态时钟显示

第10章 中断和动态时钟显示 从本章开始,按照书籍的划分,第10章开始就进入保护模式(Protected Mode)部分了,感觉从这里开始难度突然就增加了。 书中介绍了为什么有中断(Interrupt)的设计,中断的几种方式:外部硬件中断、内部中断和软中断。通过中断做了一个会走的时钟和屏幕上输入字符的程序。 我自己理解中断的一些作用: 为了更好的利用处理器的性能。协同快速和慢速设备一起工作

OpenHarmony鸿蒙开发( Beta5.0)无感配网详解

1、简介 无感配网是指在设备联网过程中无需输入热点相关账号信息,即可快速实现设备配网,是一种兼顾高效性、可靠性和安全性的配网方式。 2、配网原理 2.1 通信原理 手机和智能设备之间的信息传递,利用特有的NAN协议实现。利用手机和智能设备之间的WiFi 感知订阅、发布能力,实现了数字管家应用和设备之间的发现。在完成设备间的认证和响应后,即可发送相关配网数据。同时还支持与常规Sof

C++11第三弹:lambda表达式 | 新的类功能 | 模板的可变参数

🌈个人主页: 南桥几晴秋 🌈C++专栏: 南桥谈C++ 🌈C语言专栏: C语言学习系列 🌈Linux学习专栏: 南桥谈Linux 🌈数据结构学习专栏: 数据结构杂谈 🌈数据库学习专栏: 南桥谈MySQL 🌈Qt学习专栏: 南桥谈Qt 🌈菜鸡代码练习: 练习随想记录 🌈git学习: 南桥谈Git 🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈�

让树莓派智能语音助手实现定时提醒功能

最初的时候是想直接在rasa 的chatbot上实现,因为rasa本身是带有remindschedule模块的。不过经过一番折腾后,忽然发现,chatbot上实现的定时,语音助手不一定会有响应。因为,我目前语音助手的代码设置了长时间无应答会结束对话,这样一来,chatbot定时提醒的触发就不会被语音助手获悉。那怎么让语音助手也具有定时提醒功能呢? 我最后选择的方法是用threading.Time

安卓链接正常显示,ios#符被转义%23导致链接访问404

原因分析: url中含有特殊字符 中文未编码 都有可能导致URL转换失败,所以需要对url编码处理  如下: guard let allowUrl = webUrl.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed) else {return} 后面发现当url中有#号时,会被误伤转义为%23,导致链接无法访问

C#实战|大乐透选号器[6]:实现实时显示已选择的红蓝球数量

哈喽,你好啊,我是雷工。 关于大乐透选号器在前面已经记录了5篇笔记,这是第6篇; 接下来实现实时显示当前选中红球数量,蓝球数量; 以下为练习笔记。 01 效果演示 当选择和取消选择红球或蓝球时,在对应的位置显示实时已选择的红球、蓝球的数量; 02 标签名称 分别设置Label标签名称为:lblRedCount、lblBlueCount

poj 1258 Agri-Net(最小生成树模板代码)

感觉用这题来当模板更适合。 题意就是给你邻接矩阵求最小生成树啦。~ prim代码:效率很高。172k...0ms。 #include<stdio.h>#include<algorithm>using namespace std;const int MaxN = 101;const int INF = 0x3f3f3f3f;int g[MaxN][MaxN];int n

Java Web指的是什么

Java Web指的是使用Java技术进行Web开发的一种方式。Java在Web开发领域有着广泛的应用,主要通过Java EE(Enterprise Edition)平台来实现。  主要特点和技术包括: 1. Servlets和JSP:     Servlets 是Java编写的服务器端程序,用于处理客户端请求和生成动态网页内容。     JSP(JavaServer Pages)

6.1.数据结构-c/c++堆详解下篇(堆排序,TopK问题)

上篇:6.1.数据结构-c/c++模拟实现堆上篇(向下,上调整算法,建堆,增删数据)-CSDN博客 本章重点 1.使用堆来完成堆排序 2.使用堆解决TopK问题 目录 一.堆排序 1.1 思路 1.2 代码 1.3 简单测试 二.TopK问题 2.1 思路(求最小): 2.2 C语言代码(手写堆) 2.3 C++代码(使用优先级队列 priority_queue)