操作步骤:
1。新建一个WebApplication项目,取默认设置。
2。双击设计界面,进入后天代码编辑界面,代码如下:
using
System;
using
System.Web.Services;
namespace
WebApplication1
{
public
partial
class
_Default : System.Web.UI.Page
{
protected
void
Page_Load(
object
sender, EventArgs e)
{
}
[WebMethod]
public
static
string
TestFunc1()
{
return
"This is the returns of behind code function one"
;
}
[WebMethod]
public
static
string
TestFunc2(
string
str)
{
return
"This is the returns of behind code function two!You give me the string :"
+str;
}
}
}
3。准备好PageMethods后,编辑Default.aspx文件。代码如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="WebApplication1._Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">
<
html
xmlns
=
""
>
<
head
runat
=
"server"
>
<
title
>JS调用后台PageMethods</
title
>
<
script
type
=
"text/javascript"
language
=
"javascript"
>
function TheJSTestfunc1()
{
PageMethods.TestFunc1(onsuccess);
}
function TheJSTestfunc2()
{
var txt=document.getElementById('Text1').value;
PageMethods.TestFunc2(txt,onsuccess);
}
function onsuccess(value)
{
document.getElementById('divResult').innerHTML=value;
}
</
script
>
</
head
>
<
body
>
<
form
id
=
"form1"
runat
=
"server"
>
<
asp:ScriptManager
ID
=
"ScriptManager1"
runat
=
"server"
EnablePageMethods
=
"true"
>
</
asp:ScriptManager
>
<
div
>
<
input
id
=
"Button1"
type
=
"button"
value
=
"button"
onclick
=
"TheJSTestfunc1()"
/>
<
hr
/>
<
input
id
=
"Text1"
type
=
"text"
/><
input
id
=
"Button2"
type
=
"button"
value
=
"button"
onclick
=
"TheJSTestfunc2()"
/>
<
hr
/>
The returns :<
div
id
=
"divResult"
></
div
>
</
div
>
</
form
>
</
body
>
</
html
>
操作说明:
其实与我的另一篇随笔[]里面提到的相似。
1.页面中需要添加ScriptManager组件,然后将它的EnablePageMethods属性设置为True。
2.编写页面方法时也要向调用WebService一样,在方法前加[WebMethod],调用WebService与PageMethods其实是同出一辙,原理都是一样的。
工作原理:
暂无。
源码下载: