浅谈如何利用__doPostBack()函数做自己灵活的AJAX.NET应用

大家都很惊叹微软的Ajax.NET简单的操作,但是有没有觉得它的灵活性大大减小了呢?以前纯手写的xmlhttm的Ajax和AjaxPor.dll提供的Ajax都是非常灵活的,可以使用任意的客户端触发方式(onclick,onmouseover,onkeydown...),和调用任意的服务器端自定义函数。而微软的Ajax.net似乎只能使用服务器控件的很少的事件,最常用的就是Button的onclick事件,而服务器端的函数也似乎只能是服务器端控件的事件函数,难道我们在页面上每添加一个Ajax功能,就要多添加一个Button控件和它的一个onclick事件吗?这似乎非常的不灵活啊!

我们程序员当然是想越简单越好,还要越灵活越好,要是为了简单而失去了灵活,那就失去意义了。

下面这个例子就是我利用Ajax.net的__doPostBack()函数演示如何做到非常灵活地使用Ajax.net,灵活到客户端使用任意触发方式,传递任意参数,服务器端调用任何函数,做任何想做的事情。

 

下面是源代码,注:需要配置Web.config并且需要有Web.Extensions控件。实例下载包(包括web.config和Web.Extensions) 

FanGAjax.aspx

-------------------

 

 

FanGAjax.aspx.cs

---------------

 

 

 

-----------

其中:HTMLButton是一个简单的HTML按钮,不是服务器控件,它的Click动作也能触发AJAX,并且调用后台的函数MyServerFun1

“Put Mouse over here”的Span也是简单的HTML Span,它的Onmouseover事件也能触发AJAX,调用后台的MyServerFun2

MyServerFun1和MyServerFun2都是普通的Server自定义函数,并非控件的事件函数。

 

其实大家一看就明白,实例还是通过一个Button控件__AJAXENTRANCE和一个隐藏域__AJAXAGRS来触发AJAX和传递参数的,这仅仅是一个小技巧而已,但是却能给我们带来非常大的灵活性!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值