初识ASP.NET AJAX

ASP.NET AJAX技术是一种实现异步网络应用的技术,它被整合在ASP.NET2.0中,是ASP.NET的一种扩展技术。通过ASP.NET
AJAX技术开发人员可以将Web服务器控件和客户端脚本结合起来,并在此基础上实现了Web页面的局部更新功能。因此,当浏览器与服务器交互时,ASP.NET
AJAX技术可以将浏览器中的一部分内容呈现出来,从而避免了将浏览器整个内容提交到服务器。

AJAX是asynchronous javascript and XML(异步javascript和XML)的缩写。它是一种创建交互式网页应用的网页开发技术。在ajax中,XMLHttpRequest是其核心的技术。它为页面中javascript脚本提供了一种通讯方式,从而使得页面通过这些脚本能够与服务器发生交互。页面内的javascript脚本可以在不刷新页面的情况下与服务器发生交互,即页面可以从服务器端获取数据,或者向服务器提交数据。ajax技术与传统的web技术相比,存在3个主要区别:

  • 能够更新页面中的部分内容,不需要刷新整个页面就能够与服务器通信。
  • 页面和服务器直接的通讯可以使用异步操作,从而不需要打断用户的操作,使得页面能具有更快的反应能力。
  • 由于页面和服务器交互时,只需要页面的部分内容,因此减少了页面与服务器的通讯量,提高了应用程序的效率。

ASP.NET AJAX包括服务器端部分和客户端部分。其中,ASP.NET AJAX服务器端部分提供了5个服务器端控件。通过这些控件,开发人员嫩轻松实现异步网页和一个无刷新的web环境。5个服务器端控件说明如下:

  • ScriptManager控件:管理页面脚本(一个页面有且只有一个,并放在被管理控件之前)。
  • ScriptManagerProxy控件:管理页面的脚本。(当页面或控件嵌入另一个页面或母版时,由于另一个页面或母版已经引用了ScriptManager控件,所以本页面应使用ScriptManagerProxy控件)
  • UpdatePanel控件:和ScriptManager控件共同提供一个无刷新的web环境。(局部更新)
  • Timer
    控件:被称为定时器,它能够定时触发用户自定义的操作。
  • UpdateProgress控件:显示整个或部分页面更新的过程。

ASP.NET AJAX服务器端架构如下图所示:

ASP.NET AJAX客户端架构如下图所示:

下面是用例:

使用UpdatePanel 实现局部更新

<asp:ScriptManagerID="ScriptManager1"runat="server"></asp:ScriptManager>
<asp:UpdatePanelID="UpdatePanel2" runat="server">
                                   <ContentTemplate>
                                        <divstyle="vertical-align: central; text-align: center; width: 400px; float:left; padding: 0 400px;" runat ="server"id="divSearch">
                                           <div style="float: left">
                                               <asp:RadioButton ID="RadioButton1" runat="server"GroupName="reader" CssClass="myradio" Text="读者账号"Checked="true" />
                                           </div>
                                           <%--<label style="font-size: 13px; font-weight: 500; color:blue; width: auto ; float: left; padding-top:5px">读者账号</label>--%>
                                 
                               <divstyle="float: left; width: 80px;">
                                  <asp:RadioButton ID="RadioButton2" runat="server"GroupName="reader" CssClass="myradio" Text="读者姓名"/>
                               </div>
                                           <input runat="server" id="txtreader"type="text" placeholder="请输入账号或密码" /> 

                                   <asp:Button runat="server" Text="查询"ID="btnQuery" OnClick="btnQuery_Click"CausesValidation="false"></asp:Button>
                                       </div>
                                   </ContentTemplate>
                               </asp:UpdatePanel>

补充:

ASP.NET AJAX Control Toolkit是在ASP.NET AJAX基础上构建的,提供了数十种ASP.NET
AJAX环境中运行的控件,如果有需要大家可以从网上下载。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-11 14:34:26

初识ASP.NET AJAX的相关文章

ASP.NET MVC中使用ASP.NET AJAX异步访问WebService

使用过ASP.NET AJAX的朋友都知道,怎么通过ASP.NET AJAX在客户端访问WebService,其实在ASP.NET MVC中使用ASP.NET AJAX异步访问WebService 也没什么大的差别. 在ASP.NET应用程序里使用ASP.NET AJAX访问WebService通常都是通过ScriptMananger引入WebService生成客户端代理的方法,同时也可以使用Microsoft Ajax Library来完成.本文将介绍在ASP.NET MVC中使用ASP.NE

[MVC4]初识ASP.NET MVC4

最近一个月都在专心做unity3d的斗地主游戏,从早到晚,最后总算是搞出来了,其中的心酸只有自己知道.最近才有功夫闲下来,还是学习学习之前的老本行--asp.net,现在用.net做项目流行MVC,而不是之前的三层,既然技术在更新,只能不断学习,以适应新的技术潮流! 创建MVC工程 1.打开Visual studio2012,新建MVC4工程 2.选择工程属性,创建MVC工程 3.生成工程的目录 App_Start:启动文件的配置信息,包括很重要的RouteConfig路由注册信息 Conten

Comet ASP.NET AJAX 示例

最近公司有个项目,里面要求要用到Comet技术,所以就到网上找了一下相关的资料和文章,发现有些人说用Ajax的长轮询比较好,后来就百度了一下,发现comet貌似就是通过ajax演变而来的,也就是comet是ajax里面的一种,只不过有多种实现方式,下面我来贴一个经过自己修改后的代码,最后也会贴一个我在博客园上看到的一篇文章的地址,我的代码是通过他的文章所受到的启发修改的,感谢他. 前台: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transi

ASP.NET AJAX(Atlas)和Anthem.NET——管中窥豹般小小比较

Anthem.NET近日有朋友和我提到Anthem.NET这个同样基于ASP.NET的Ajax框架,今天有机会亲自尝试了一下.初步的感觉似乎和ASP.NET AJAX不相上下,甚至某些地方要强于ASP.NET AJAX.当然,半个小时的尝试不能算作什么,这篇文章的很多比较结论可能只是因为我的“无知”造成的,取名“管中窥豹”,其意正在如此. Anthem.NET的主页在这里,提供了下载文件以及大量的示例程序.同时,博客园的木野狐兄弟也写了一些很好的关于Anthem.NET的文章,值得我们学习(希望

初识ASP.NET---点滴的积累---ASP.NET学习小结

差不多十多天前学习完了北大青鸟的学习视频,没想到没几天的时间就看完了XML视频和牛腩的Javascript视频.学习完了也该总结总结,理理自己的思路,消化一下自己学习到的东西. 视频中的理论知识并不是很多,以例子驱动学起来也不会他过于乏味.全部的学习内容大概的可以用下图表示. 个人感觉这套视频的体系感不是很强,每一集之间老师的串联并不是做得很好,向我等没有教材的有些小的知识无从知晓.但是不能不说这套视频确很适合初学者学习,老师讲解的也不错,从此我也算是入门. 当然要想进一步的了解ASP.NET并

ASP.NET AJAX入门系列(9):在母版页中使用UpdatePanel

ASP.NET AJAX入门系列(9):在母版页中使用UpdatePanel 本文简单介绍一下在母版页中使用UpdatePanel控件,翻译自官方文档. 主要内容 1.添加UpdatePanel控件到Content Page 2.通过Master Page刷新UpdatePanel 一.添加UpdatePanel控件到Content-Page 1.添加一个新的Master Page,并切换到设计视图. 2.在工具箱中AJAX Extensions标签下双击ScriptManager控件添加到页面

ASP.NET AJAX入门系列(8):自定义异常处理

ASP.NET AJAX入门系列(8):自定义异常处理 在UpdatePanel控件异步更新时,如果有错误发生,默认情况下会弹出一个Alert对话框显示出错误信息,这对用户来说是不友好的,本文看一下如何在服务端和客户端脚本中自定义异常处理,翻译自官方文档. 主要内容 1.在服务端自定义异常处理 2.在客户端脚本中自定义异常处理 一.在服务端自定义异常处理 1.添加ASPX页面并切换到设计视图. 2.在工具箱中AJAX Extensions标签下双击ScriptManager和UpdatePane

ASP.NET AJAX简明教程

当我们谈论Ajax时,首先想到的就是JavaScript下的Ajax,用来完成网页的交互,局部刷新工作,Microsoft的ASP.NET AJAX框架在Web的开发中承担着类似的角色. Microsoft的ASP.NET AJAX框架,整合了客户端脚本库和服务器的开发框架,基于.NET平台和Visual Studio开发工具来创建具有良好用户体验的Web页面和服务器端的页面. ASP.NET AJAX框架的结构体系: 1.客户端 ASP.NET AJAX是可扩展的,完全面向对象的JavaScr

使用ASP.NET AJAX与Bootstrap 弹窗解决方案

我在做采购系统时,因为使用了ASP.NET AJAX的UpdatePanel的控件,可以使得页面局部刷新显示.但是使用起来问题还是很多. 下面列出了一种情况,话了将近5个小时才算解决,虽然不是很完美,但是应该够了. 应用背景:在采购系统里,因为一个产品可以有多个供应商,同样一个供应商可以有多个产品.所以产品和供应商是多对多的关系. 在产品页面,用户选择一个产品,我们希望他可以选择供应商.如下图,选择“得利纸业”,然后在单击“管理供应商”,就弹出供应商页面. 其实,如果是采用刷新技术,用户选择“管