Asp.net中的Ajax技术实现
随着网络的发展,web开发越来越流行.然而人们却希望web开发能像WinForm一样.这个在以前确实是很难实现的,但是,自从有了Ajax技术之后,一切变的那么自然.
Ajax技术是一种异步传输技术,他可以根据客户端的要求传送客户想要的数据,而不是传送整个页面的数据,由于传送的是很少一部分的数据,因此,响应速度很快,用户基本上感觉不到在等待.如果是以前的话,用户要等好久才会响应,而且中间还会出现白屏现象.
其实Ajax技术并不难,前提是你要采用一个好的框架,如果是一切代码由你来写,当然很复杂.javascript和css技术一定会在Ajax中用到,但是这个我觉得你不必去刻意的学习,但是你一定要能看懂,而且要会修改成自己想要的代码.
以前在学校里只是自学了点java,然后就开始做网站,遇到不懂的东西就到Google上去找,然后对javascript和css技术慢慢的会了,其实我觉得这个一个好的学习方法,在实浅中摸索.参加工作后,由于项目的需要,又开始了学习Ajax技术,刚学的时候,也是在网上看了几篇关于Ajax技术的文章,然后就照着别人说的做了个简单的例子,然后就开始慢慢的上路了.学会Ajax技术也就用了一两天的时间,其实这一两天也不是完全在学他,还在做项目,因为看了新的技术后也要慢慢的理解下.
现在我就把我当初做的小例子拿出来给大家看看,希望对大家有所帮助.开发环境是vs2005(sp1补丁)和AjaxPro.2.0.dll(这个可以到网上下,用了这个框架,开发会变的非常简单,这就我说的要用一个好的框架).
1.首先新建一个空的解决方案,然后再添加一个web应用程序的项目(这个好象要打了补丁才有)
2.引入AjaxPro.2.0.dll组件,并修改web.config文件.在system.web之间添加以下代码.使post和get的请求可以通过AjaxPro.2
<httpHandlers>
<add verb="POST,GET" path="ajaxpro/*,ashx" type="AjaxPro.AjaxHandlerFactory,
AjaxPro.2"/>
</httpHandlers>3.在Default.aspx.cs的page_load函数里添加以下代码,用来注册AjaxPro.
AjaxPro.Utility.RegisterTypeForAjax(typeof(AjaxSite));4.编写一个函数以便让服务器响应客户端的请求.这只是一个非常简单的验证函数,大家可以通过连接数据库来验证.
[AjaxPro.AjaxMethod]
public int Verify(string UserName)
{
if (UserName.Equals("ring"))
return 0;
else
return -1;
}5.然后编写一个客户端的函数来调用服务器端的功能.
<script language ="javascript" type="text/javascript">
function Verity()
{
var ReturnValue=1;
ReturnValue=MyDemo.AjaxSite.Verify(document.all("TextBox1").value).value;
var msg=document.getElementById("Label2");
if(ReturnValue==0)
msg.innerHTML="通过";
else
msg.innerHTML="验证错误";
msg.style.color="red";
}
</script> 非常简单吧,一点都不难.我把这个例子共享下,大家可以下载,有什么问题可以和我留言,我一定回答,谢谢.
运行的结果如图,界面很简单.


AjaxPro.2.0.dll下载:/Files/ringwang/AjaxPro.2.rar
本篇的小例子下载: /Files/ringwang/TestAjax3.rar

浙公网安备 33010602011771号