您的位置:首页 > 编程语言

Ajax底层代码简析(可直接用的框架)

2006-05-25 11:42 204 查看
近来忙毕业设计,又很长时间没写blog了。
学ajax也有段时间了,理论是看了不少,也对MagicAjax框架做了下了解,当然要吃透它还是有很长的路要走。
一直觉得对Ajax底层的代码应该总结一下。其实很底层的代码是比较简洁明了的,但功能却比较简单。一般我们都用Send(null).以前我一直在想我怎么来控制当异步传送Http请求时要调用的后台的指定的(我想用的)代码,现在终于明白了(唉,对自己的智商表示怀疑),那就要在Send方法中传送参数。参数中应该包括事件的触发者和它的参数,还有就是ViewState的值。
具体代码如下(里面我加了些注释,后面不再解释):

1__PageForm = null;
2
3function AjaxCallObject()
4
8AjaxCallObject.prototype.Init = function()
9
13AjaxCallObject.prototype.GetHttpObject = function()
14
30AjaxCallObject.prototype.HookAjaxCall = function()
31
37// Replaces normal __doPostBack
38AjaxCallObject.prototype.DoPostBack = function(eventTarget, eventArgument)
39
43AjaxCallObject.prototype.DoAjaxCall = function(eventTarget, eventArgument)
44
147AjaxCallObject.prototype.OnComplete = function(responseText, responseXml)
163
168
171AjaxCallObject.prototype.OnError = function(status, statusText, responseText)
172
185AjaxCallObject.prototype.ReadyStateChange = function()
186
218AjaxCallObject.prototype.EncodePostData = function(data)
219
223AjaxCallObject.prototype.SetHtmlOfPage = function(html)
224
230var AJAXCbo = new AjaxCallObject();
代码长了点,不过可以直接用了,只要在相应的后台代码中给服务器控件加段代码就成了。比如说,Web页面上放了个按钮控件,ID为Button1,那么在后台代码的Page_Load中加上下面一段代码:

Button1.Attributes.Add("onclick","modify();");
这里的modify是我在页面的html里定义的一个方法,其内容是:

<script>
function modify()
</script>
到这就结束了,你可以看到无刷新更新的效果了。接下来的工作就是想办法更进一步,只把更新过的值传到相应的控件,该怎么做还需要继续努力了,呵呵。
水平有限,难免有错误,望能和大家多多交流!
例子代码下载:/Files/fxb248/ajaxtestaaa.rar
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐