最近看了看关于ajax pro的东西,因为要开发WebPhone的时候,就使用了该方法,
WebpHone中是一个可以在Web上去MakeCall的页面,过程就是当用户要联系客户的时候,提供一个可以MakeCall给Agent的方法,或自动拨号打给用户,当接通后再连接到Agent. 当然了,这个需要硬件的支持.
这里我只是说说关于前台去调用后台的一个方法.使用Ajax Pro的方法. 至于后台的处理过程....太麻烦,略去
1. 将ajax.dll引入到工程中。
2. 修改Web.config 文件,在System.web的节点下添加如下:
<httpHandlers>
<add verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory, Ajax"/>
</httpHandlers>
3. 在要使用的页面中的Page_Load 方法中添加 对Ajax的支持。及写一个简单方法,并给方法的属性标注为AjaxMethod。
public partial class Demo : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Ajax.Utility.RegisterTypeForAjax(typeof(Demo));
}
[Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.Read)]
public int LogIn(string userName,string Pwd)
{
return 0;
}
}
4. 页面调用,其中Login_CallBack 是回调的方法,当然,这里使用了异步的方式,也可使用同步的方式,同步方发只要在调用LogIn的时候,不要带入回调就可以了。如果调用的过程如果很长的话,应该使用异步的方法,在调用后,可以显示一个loading然后等待返回。当返回后,在更新界面咯。
function IMG1_onclick() {
var userName = $("Username").value;
var userpwd= $("Password").value;
Demo.LogIn(userName,userpwd,Login_CallBack);
}
function Login_CallBack(response)
{
if (response.error != null)
{
alert(response.error);
return;
}
var states = response.value;
if (states == null)
{
return;
}
if(states == 0)
{
window.location = "Default.aspx";
}
}