JS调用PageMethods

http://www.cnblogs.com/Ren_Lei/archive/2010/07/14/1777413.html

JS调用PageMethods

操作步骤:

1。新建一个WebApplication项目,取默认设置。

2。双击设计界面,进入后天代码编辑界面,代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
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文件。代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="WebApplication1._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>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>

操作说明:

其实与我的另一篇随笔[JS调用WebService]里面提到的相似。

1.页面中需要添加ScriptManager组件,然后将它的EnablePageMethods属性设置为True。

2.编写页面方法时也要向调用WebService一样,在方法前加[WebMethod],调用WebService与PageMethods其实是同出一辙,原理都是一样的。

posted @ 2017-02-10 15:16  清空回声  阅读(492)  评论(0编辑  收藏  举报