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