JS调用PageMethods
操作步骤:
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" "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其实是同出一辙,原理都是一样的。
工作原理:
暂无。
源码下载:
http://www.cnblogs.com/Ren_Lei/archive/2010/07/14/1777413.html
                    
                
                
            
        
浙公网安备 33010602011771号