【工作总结】AjaxPro7步骤
//环境vs2003,Ajaxpro.dll
//exmple:有个页面Register.aspx(Register.aspx.cs)要实现无刷新提醒用户所注册帐号是否可用
//过程:访问Register.aspx -->输入用户名 -->用户名文本框失去焦点 -->触发客户端脚本checksername()
-->通过checksername()调用Register.aspx.cs的[AjaxNamespace("Register")].[AjaxMethod(HttpSessionStateRequirement.ReadWrite)] -->返回returnVal值给checkUsername()判断 -->用户名已经存在
1。添加引用Ajaxpro.dll
2。配置web.config,在<system.web></system.web>节里添加子节如下:
<!-- 应用AJAX -->
<httpHandlers>
<add verb="POST,GET" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory, AjaxPro" />
</httpHandlers>
3。在Register.aspx.cs代码文件里
在页面类前(public class Register: Page)为Ajax客户端方法注册命名空间,可以用当前页面类名,[AjaxNamespace("Register")]
4。在Page_Load里注册AjaxPro.Utility.RegisterTypeForAjax(typeof(Register));
5。编写客户端方法checksername()将调用的服务段方法
[AjaxMethod(HttpSessionStateRequirement.ReadWrite)]
public string userNameISExits(string username)
{
...
if (user name is exits)
{
return "1";
}
else
{
return "0";
}
}
6。在Register.aspx html源里编写脚本
<script>
function checkUsername()
{
var username=$("tb_username").value;
var returnValue;
//returnValue = [AjaxNamespace("Register")].[AjaxMethod(HttpSessionStateRequirement.ReadWrite)]
returnValue = Register.userNameISExits(username).value;
if (returnValue=="1")
{
存在;
}
}
</script>
7。当用户名文本框失去焦点时触发客户端脚本
<input type="text" id="username" onblur="checkUsername()"/>

