|
在asp.net ajax中updatepanel比较常用,原本需要刷新的操作套在updatepanel中就成了ajax操作了,挺帅!但ajax也是支持与Xml Web Service交互的,这种方法更像是传统的ajaxpro和其他ajax框架,如jquery,magicajax,extjs的风格,但MS总是独树一帜,谁让他的产品设计能力那么高呢!我辈恐怕望尘莫及亚.闲话少叙,下面简单讲述下asp.net ajax如何调用xml web service,熟悉的朋友就略过吧 1. 创建一个支持Asp.Net Ajax的网站或者网络应用程序,我使用的是vs2008,在vs2008中,如果建立的网站支持.net framework 3.5就有ajax的缺省支持,这陈芝麻,烂谷子的事情,也不多说。 2. 建立好项目之后,在网站根目录中添加一个Web服务UserService.asmx,在UserService.asmx中添加如下方法:
[WebMethod]
public bool UserAdd(string userName,string pwd) { return true; } 注意服务类上部要添加Attribute [System.Web.Script.Services.ScriptService] 3. 然后把default.aspx中的ScriptManager修改成如下代码的德性: <asp:ScriptManager ID="ScriptManager1" runat="server">
<Services> <asp:ServiceReference Path="UserService.asmx" /> </Services> </asp:ScriptManager> 下面我们就在页面中创建用Ajax消费这个UserService的代码:主要包括如下: <h2>Ajax调用Xml Web Service示例1</h2>
<div style="border: 1px solid Black; width: 50%; padding: 10px;"> <table class="style1"> <tr> <td> 用户名: </td> <td> <input id="txtName" type="text" /> </td> </tr> <tr> <td> 密码: </td> <td> <input id="txtPwd" type="password" /> </td> </tr> <tr> <td> </td> <td> <input id="Button2" type="button" value="提交" onclick="userAdd()" /> </td> </tr> </table> </div> 在<head></head>添加如下脚本 function userAdd()
{ var name = $get("txtName").value; var pwd = $get("txtPwd").value; AjaxWs.UserService.UserAdd(name,pwd,userAddCallBack); } function userAddCallBack(res) { alert(res); }
(责任编辑:admin) |
}