一。用asmx调用
例子:
Default.aspx
<%@ Page Language="C#" %>
<!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>无标题页</title>
<script type="text/javascript">
function btnInvoke_onclick() {
var theName = $get("tbName").value;
SimpleWebService.SayHello(theName, onSayHelloSucceeded);
}
function onSayHelloSucceeded(result) {
$get("result").innerHTML = result;
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="sm" runat="server">
<Services>
<asp:ServiceReference Path="~/SimpleWebService.asmx" />
</Services>
</asp:ScriptManager>
<input id="tbName" type="text" />
<input id="btnInvoke" type="button" value="Say Hello"
onclick="return btnInvoke_onclick()" />
<div id="result"></div> </div>
</form>
</body>
</html>
SimpleWebService.cs核心代码:
[WebMethod]
public string SayHello(string name)
{
return string.Format("Hello {0}!", name);
}
二。用类调用
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
[System.Web.Services.WebMethod]
public static string SayHelloFromPage(string name)
{
return string.Format("Hello {0}!", name);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
<script type="text/javascript">
function btnInvoke_onclick() {
var theName = $get("tbName").value;
PageMethods.SayHelloFromPage(theName, onSayHelloSucceeded);
}
function onSayHelloSucceeded(result) {
$get("result").innerHTML = result;
}
</script>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true">
</asp:ScriptManager> <div>
<input id="tbName" type="text" />
<input id="btnInvoke" type="button" value="Say Hello"
onclick="return btnInvoke_onclick()" />
<div id="result"></div>
</div>
</form>
</body>
</html>
说明:
Javascript 调用格式:
SomeNamespace.SomeClass.SomeMethod(param1, param2, onSucceeded, onFailed, contextObj);