ASP.NET中JavaScript 调用后台代码

原创 2015年02月12日 18:06:57

前序:在不需要右击页面或回发的情况下刷新页面,即JS调用后台代码;


方法一:调用隐藏服务端按钮的点击事件

       1、在前端放一个隐藏按钮,将需要调用的后台代码写入OnClick事件中;  

       2、在前台写一个js函数,函数体为document.getElementById("<%=btnID.ClientID%>").click();  

       3、在需要刷新的地方调用js函数,即可调用按钮OnClick事件;

      4、此方法适用无返回值;


方法二:JS中直接用<%=MethodName()%>调用

       1、在后台写好方法,public或是protected;  

       2、在前台写一个js函数,函数体为var result = "<%=MethodName()%>" 或是 直接 eval("<%=MethodName()%>");  

       3、在需要刷新的地方调用js函数,即可调用后台方法;

      4、此方法适用带返回值;


方法三:利用PageMethod调用


PageMethod方法介绍:

PageMethods.FunctionName(Paramter1,Parameter2,...,SuccessMethod, FailedMethod, userContext);
其中,前面Paramter1,Parameter2,...,表示的是FunctionName的参数,类型是Object或Array;
SuccessMethod是需要使用后台返回结果的Js方法,
FailedMethod是当后台的csFunctionName方法发生异常情况下的执行的Js方法(容错处理方法),
userContext是可以传递给SuccessMethod方法,或是FailedMethod方法的任意内容。


实现方法三按照以下步骤:

1.后台方法必须是public static  的,

方法头部上加上[System.Web.Services.WebMethod],来标注特性。

2.在前台页面加入ScriptManager控件,并把其EnablePageMethods属性设为true。

 

3.调用PageMethods,这里只是最简单调用。

PageMethods.FunctionName(回调的js方法);

//其中FunctionName为后台创建的静态方法名,回调js方法为前台接受结果的方法。


PageMethods例子:

后台代码:

一.无参数方法

[System.Web.Services.WebMethod]
public static string ShowValue()//可加上参数

{
return "HelloWord=  =C#";
}

 

前端代码:

 

<script type="text/javascript"> 

function bclick()
{
PageMethods.ShowValue(HelloWord);//调用有参数方法PageMethods.ShowValue(‘123’ , HelloWord);
}

function HelloWord(result) //回调方法接受后台代码的执行结果
{
alert(result);


}

//调用后台有参数方法 

function bclick2()
{
var text = "test";
PageMethods.ShowValue2(text,sshow2);
}

</script>


方法四:JQuery  Ajax 异步调用

百度一大堆

 

 

asp.net 后台方法中调用客户端js

1.调用方法:CallJavaScript(this,"show","images/pic.gif"); 2.后台方法:  pu...
  • lilm36
  • lilm36
  • 2007-09-10 15:41:00
  • 1139

asp.net js方法互调 asp.net 前台如何调用后台方法

1. JavaScript函数中执行C#代码中的函数: 方法一:1、首先建立一个按钮,在后台将调用或处理的内容写入button_click中; 2、在前台写一个js函数,内容为document...
  • u011966339
  • u011966339
  • 2017-04-06 16:21:49
  • 1436

ASP.NET 前台js调用后台方法,并且局部刷新的方法

Asp.net前台js调用后台方法,并且局部刷新的方法。 (1) 前台js代码:在需调用后台代码的地方,书写如下代码: PageMethods. houtai (latlng,myCallB...
  • qq285679784
  • qq285679784
  • 2016-05-12 09:46:00
  • 970

Asp.net 后台调用js方法

1. 用Response.Write方法  代码如下: Response.Write("alert("XXX");");  此方只能调用内部函数,具体调用自定义的函数只能在Response.Write...
  • GrandShaw
  • GrandShaw
  • 2016-11-21 13:49:38
  • 4819

asp.net前台js调用后台方法

asp.net前台js调用后台方法 2013-07-21 20:14 2620人阅读 评论(1) 收藏 举报  分类:   .NET(50)  版权声明:...
  • zhaohongx
  • zhaohongx
  • 2016-07-07 09:26:03
  • 408

asp.net 客户端JS调用服务器端方法

  • 2008年05月15日 17:38
  • 63KB
  • 下载

asp.net后台调用前端js

[html] view plain copy print? 为什么在项目后台要使用C#调用前台的Javascript代码呢?因为我们在项目开发的过程中,根据项目的需要,我们需要用到其他项目组...
  • Vezn_King
  • Vezn_King
  • 2016-05-05 13:43:52
  • 2360

js 调用后台代码(比较实用,好记)

javascript函数中执行C#代码中的函数: 方法一:1、首先建立一个按钮,在后台将调用或处理的内容写入button_click中; 2、在前台写一个js函数,内容为d...
  • zanychou
  • zanychou
  • 2012-02-02 11:37:51
  • 76794

asp.net中aspx页面中调用后台cs中的方法

在asp.net开发中当需要在aspx中直接调用cs中的方法,可以使用下面的方法 "> cs代码 protected void Page_Load(object sender, EventArgs e...
  • Teng_s2000
  • Teng_s2000
  • 2007-12-03 22:08:00
  • 8469

利用JQuery直接调用asp.net后台方法

利用JQuery的$.ajax()可以很方便的调用asp.net的后台方法。 [WebMethod]   命名空间 1、无参数的方法调用, 注意:1.方法一定要静态方法,而且要有[WebM...
  • shan1774965666
  • shan1774965666
  • 2016-05-21 14:41:32
  • 1389
收藏助手
不良信息举报
您举报文章:ASP.NET中JavaScript 调用后台代码
举报原因:
原因补充:

(最多只允许输入30个字)