ASP.Net中内置的简化AJAX开发的控件UpdatePanel
放入ScriptManager,将要实现AJAX效果的控件放到UpdatePanel中即可。
UpdatePanel原理探秘,用HttpWatch看。
只把需要无刷新更新的部分放到UpdatePanel中。
UpdatePanel用来实现一些对性能要求不高的需求非常方便。
从原理分析为什么在客户端把TextBox变红,AJAX请求以后又变白了。
Timer实现定时AJAX效果,原理分析。
UpdateProgress显示“正在加载数据”。
AJAX Toolkit简介。
微软异步组件:
1.拖拽ScriptManager一个。
2.可以拽多个UpdatePanel.
3.把ListView放到UpdatePanel中。
配合ObjectDataSource实现增删改查。
4.演示在UpdatePanel中,放按钮,做按钮的点击事件
在按钮的点击事件中执行操作。
5.做一些Demo性演示。
6.放在UpdateProcess中的内容就是当服务器等待的时候显示这个panel,当接收到请求数据的时候则UpdateProcess就不显示了。
微软Ajax组件
-》讲在前面:这样提高了开发效率,但是真实的执行效率,并没有提高
-》主要控件:在工具箱的“ajax扩展”标签中,包含了基本的ajax控件
ScriptManager:放在页面的最顶端,必须要有这个控件,才可以使用异步控件
一个页面中只有一个ScriptManager控件
UpdatePanel:放在这个容器内的内容,都会进行异步刷新
可以有多个UpdatePanel控件
UpdateProgress:用于显示进度,可以放置一张旋转的图片
Index.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Index.aspx.cs" Inherits="t3_Ajax.Index" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<style type="text/css">
.auto-style1 {
width: 100px;
height: 100px;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<div>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdateProgress ID="UpdateProgress1" runat="server" AssociatedUpdatePanelID="UpdatePanel1">
<ProgressTemplate>
<img alt="" class="auto-style1" src="data:images/loading.gif" />
</ProgressTemplate>
</asp:UpdateProgress>
<br />
<br />
<br />
<hr />
<%=DateTime.Now.ToString() %>
</div>
</form>
</body>
</html>
Index.aspx.cs
public partial class Index : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{ } protected void Button1_Click(object sender, EventArgs e)
{
Thread.Sleep();
Label1.Text = DateTime.Now.ToString();
}
}