1、首先是使用VS.Net2005创建一个 ASP.Net AJAX-Enabled Web Application
2、创建一个WebService:Service1.asmx
- namespace AJAX1
- {
- /// <summary>
- /// Service 的摘要说明
- /// </summary>
- [System.Web.Services.WebService(Namespace = "http://tempuri.org/")]
- [System.Web.Services.WebServiceBinding(ConformsTo = System.Web.Services.WsiProfiles.BasicProfile1_1)]
- [System.ComponentModel.ToolboxItem(false)]
- // 注意:一定要加上下面这个属性,才能使用js回调
- [System.Web.Script.Services.ScriptService]
- public class Service1 : System.Web.Services.WebService
- {
- [System.Web.Services.WebMethod]
- public string HelloWorld(string name)
- {
- return "Hello World:" + name;
- }
- }
- }
3、建好WebService后,创建一个aspx页面,后台代码不用写东西,直接写前台代码:
- <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="AJAX1._Default" %>
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml" >
- <head runat="server">
- <title>Untitled Page</title>
- <script type="text/javascript">
- function btnClick(){
- // 调用WebService方法,命名空间.类名.方法名(参数列表)
- // 前面跟方法所需的参数,接着是方法回调成功时要执行的js函数,最后一个是方法回调失败时要执行的js函数
- AJAX1.Service1.HelloWorld("you",funReady,funError);
- }
- // result 就是WebService方法返回的数据
- function funReady(result){
- alert(result);
- }
- // err 就是WebService方法返回的错误信息
- function funError(err){
- alert("Error:" + err._message );
- }
- </script>
- </head>
- <body>
- <form id="form1" runat="server">
- <div>
- 在下面的Services标签内注册要使用的WebService
- <asp:ScriptManager ID="ScriptManager1" runat="server">
- <Services>
- <asp:ServiceReference Path="~/Service1.asmx" />
- </Services>
- </asp:ScriptManager>
- <input type="button" onclick="btnClick();" value="test" />
- </div>
- </form>
- </body>
- </html>