Ajax入门实例第一篇 (Ajax.NET组件使用第一篇)
我也是新手,捉摸了半天,终于写了自己的第一个Ajax实例,拿出来分享,希望其他朋友能很快的写出自己的第一个Ajax程序!
Ajax,即Asynchronous JavaScript and XML的缩写,就是异步的JavaScript 和XML。Ajax不是一种新技术,是JavaScript、XML、XMLHttpRequest 等等各项技术的综合应用。上面是官方定义,在我看来,Ajax就是使cs中的代码/函数,以一种javascript方式执行,以达到不刷新界面的技术。(纯粹个人观点,欢迎拍砖)
言归正传,下面介绍我的第一个Ajax程序:
程序说明:实现在界面不刷新的情况下,点击按钮显示服务器端时间。
1、准备:下载了一个.net Ajax开发包,以便事半功倍,详细地址参见http://ajax.schwarz-interactive.de。就是一个dll,我用的版本是5.7.25.1,开发环境是VS2005,操作系统:Vista(关闭了UAC)。
2、新建一个asp.net项目,在web.config中加入配置信息
1<system.web>
2 <httpHandlers>
3 <add verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory, Ajax" />
4 </httpHandlers>
5</system.web>
3、该Asp.net项目中,加入对新建一个asp.net项目。(或者直接将那个文件copy到Bin目录下面)2 <httpHandlers>
3 <add verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory, Ajax" />
4 </httpHandlers>
5</system.web>
4、新建一个页面,假定名称为MyPage.aspx
其Aspx代码:
1<%%>
2
3<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
4<html xmlns="http://www.w3.org/1999/xhtml">
5<head runat="server">
6 <title>Untitled Page</title>
7</head>
8<body>
9 <form id="form1" runat="server">
10 <div>
11 <input type="button" value="Click Here to Get DateTime" onclick="javascript:DoIt()" />
12 <br />
13 <br />
14 <textarea id="TextArea1" name="myDisplay" rows="2" style="width: 506px" cols="2"></textarea>
15 </div>
16 </form>
17
18 <script language="javascript">
19 function DoIt()
20 {
21 document.forms[0].myDisplay.value=MyPage.GetString().value;
22 }
23 </script>
24
25</body>
26</html>
27
其CS代码2
3<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
4<html xmlns="http://www.w3.org/1999/xhtml">
5<head runat="server">
6 <title>Untitled Page</title>
7</head>
8<body>
9 <form id="form1" runat="server">
10 <div>
11 <input type="button" value="Click Here to Get DateTime" onclick="javascript:DoIt()" />
12 <br />
13 <br />
14 <textarea id="TextArea1" name="myDisplay" rows="2" style="width: 506px" cols="2"></textarea>
15 </div>
16 </form>
17
18 <script language="javascript">
19 function DoIt()
20 {
21 document.forms[0].myDisplay.value=MyPage.GetString().value;
22 }
23 </script>
24
25</body>
26</html>
27
1using System;
2using System.Data;
3using System.Configuration;
4using System.Collections;
5using System.Web;
6using System.Web.Security;
7using System.Web.UI;
8using System.Web.UI.WebControls;
9using System.Web.UI.WebControls.WebParts;
10using System.Web.UI.HtmlControls;
11
12public partial class MyPage : System.Web.UI.Page
13{
14 protected void Page_Load(object sender, EventArgs e)
15 {
16 Ajax.Utility.RegisterTypeForAjax(typeof(MyPage));
17 }
18
19 [Ajax.AjaxMethod]
20 public string GetString()
21 {
22 DateTime d = DateTime.Now;
23 return "The time is " + d.ToString();
24 }
25}
26
5、运行,点击按钮,即可实现在界面不刷新的情况下,显示服务器端时间。2using System.Data;
3using System.Configuration;
4using System.Collections;
5using System.Web;
6using System.Web.Security;
7using System.Web.UI;
8using System.Web.UI.WebControls;
9using System.Web.UI.WebControls.WebParts;
10using System.Web.UI.HtmlControls;
11
12public partial class MyPage : System.Web.UI.Page
13{
14 protected void Page_Load(object sender, EventArgs e)
15 {
16 Ajax.Utility.RegisterTypeForAjax(typeof(MyPage));
17 }
18
19 [Ajax.AjaxMethod]
20 public string GetString()
21 {
22 DateTime d = DateTime.Now;
23 return "The time is " + d.ToString();
24 }
25}
26