微软Ajax客户端流程

此文章的基础为读者大体了解MS Ajax客户端lib的相关功能。可以下载此书:http://download.csdn.net/detail/robertdong1203/4446291

Sys.WebForms.PageRequestManager._initialize方法如下:

Sys.WebForms.PageRequestManager._initialize = function Sys$WebForms$PageRequestManager$_initialize(scriptManagerID, formElement) {
    Sys.WebForms.PageRequestManager.getInstance()._initializeInternal(scriptManagerID, formElement);
}

大家可以发现它调用了initializeInternal方法_initializeInternal: Sys$WebForms$PageRequestManager$_initializeInternal:

function Sys$WebForms$PageRequestManager$_initializeInternal(scriptManagerID, formElement) {

...

his._form.onsubmit = null;
this._onFormSubmitHandler = Function.createDelegate(this, this._onFormSubmit);

...

Sys.UI.DomEvent.addHandler(this._form, 'submit', this._onFormSubmitHandler);

...

}

那么在前端调用form.submit()是就会调用_onFormSubmit (_onFormSubmit: Sys$WebForms$PageRequestManager$_onFormSubmit):

function Sys$WebForms$PageRequestManager$_onFormSubmit(evt) {

...

var request = new Sys.Net.WebRequest();

...

request.get_headers()['X-MicrosoftAjax'] = 'Delta=true';
request.get_headers()['Cache-Control'] = 'no-cache';

...

request.invoke();

...

evt.preventDefault();

}

从中可以发现此方法,按要求新建了一个Sys.Net.WebRequest,将此request发回服务器端,并且取消submit的默认行为

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值