【IT168技术文档】
客户端调用服务器端方法:
<script language=javascript type="text/javascript"> 2 function GetCurrentTime() 3 { 4 PageMethods.GetCurrentTime('NewEgg ajax training',CheckIsSuccess); 5 } 6 function CheckIsSuccess(result) 7 { 8 alert(result); 9 } 10 </script> 11 12 <input id="Button1" type="button" value="客户端控件调用服务器端的方法" onclick="GetCurrentTime()" />
这样就可以了,然后还一个地方要设置的就是ScriptManager有个属性:EnablePageMethods="true"[WebMethod] 2 public static string GetCurrentTime(string str) 3 { 4 return str + DateTime.Now.ToLongTimeString(); 5 }
客户端调用WebService的方法:
1 <asp:ScriptManager ID="ScriptManager1" runat="server"> 2 <Services> 3 <asp:ServiceReference Path="AjaxTestWebService.asmx" InlineScript="true" /> 4 </Services> 5 </asp:ScriptManager> 6 <br /> 7 这个就是用客户端的方法去调用WebService里面的方法 <div> 8 <input id="Button1" type="button" value="点击调用WebService里边的方法产生一个随机数" onclick="getRandom()" /> 9 10 <script language="javascript" type="text/javascript"> 11 function getRandom() 12 { 13 Ajax_Dear.AjaxTestWebService.GetRandom(getR); 14 } 15 function getR(result) 16 { 17 alert(result); 18 } 19 </script>
1 [WebService(Namespace = "http://tempuri.org/")] 2 [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] 3 [ScriptService] 4 public class AjaxTestWebService : System.Web.Services.WebService 5 { 6 7 [WebMethod] 8 public string HelloWorld() 9 { 10 return "Hello World"; 11 } 12 [WebMethod] 13 public int GetRandom() 14 { 15 return new Random(DateTime.Now.Millisecond).Next(); 16 } 17 }