js 调用后台代码

JavaScript调用ASP.NET后台代码

方法一

        1、首先建立一个按钮,在后台将调用或处理的内容写入button_click中;

2、在前台写一个js函数,内容为document.getElementById("btn1").click();

3、在前台或后台调用js函数,激发click事件,等于访问后台c#函数;

方法二

1、函数声明为public

后台代码(把public改成protected也可以)

public string methodname()          //注意该方法不能为void,否则执行会报错
           {

//在这之前可以做任何一些服务端的操作,可以不把返回值作为目的,而是要执行一些服务端的代码。

return  "";  
           } 
 
        2、在html里用<%=fucntion()%>可以调用

前台脚本

<script language=javascript>

var a = "<%=methodname()%>";

alert(a);

eval("<%=methodname()%>");     //如果只是要执行服务端的一些代码也可以写为如下,这样就可以执行服务端代码了

</script>

方法三:利用PageMethods调用后台代码

PageMethod方法介绍:

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

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

1.在后台创建方法,必须是static(静态的),方法必须是public类型的,否则访问不到会报异常,

接着要在该方法头部上加上[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 "js调用后台方法";
    }

二.有参数方法

[System.Web.Services.WebMethod]
    public static string ShowValue2(string msg)
    {
        return msg;

}

前端代码:

<script type="text/javascript">

//调用后台无参数方法

function bclick()
        {
            PageMethods.ShowValue(sshow);
        }
        
        function sshow(val)       //回传方法用val接受后台代码ShowValue的执行结果
        {
            document.getElementById("show").innerText = val;

}

//调用后台有参数方法

function bclick2()
        {
             var text = "test";
             PageMethods.ShowValue2(text,sshow2);
        }
        
        function sshow2(val)       //回传方法用val接受后台代码ShowValue的执行结果
        {
            document.getElementById("show").innerText = val;
        }
 </script>
 
<input id="Button1" type="button" value="click" onclick="bclick();" />
<input id="Button2" type="button" value="click2" onclick="bclick2();" />
<div id="show"></div>

时间: 2024-12-13 13:52:37

js 调用后台代码的相关文章

asp.net调用前台js调用后台代码分享

C#前台js调用后台代码 前台js <script type="text/javascript" language="javascript"> function Ceshi() { var a = "<%=Getstr()%>"; alert(a); } </script> <input type="button" onclick="Ceshi();" value=

js调用后台代码的几种方式

JS调用后台方法大全 javascript函数中执行C#代码中的函数:方法一:1.首先建立一个按钮,在后台将调用或处理的内容写入button_click中;2.在前台写一个js函数,内容为document.getElementById("btn1").click();3.在前台或后台调用js函数,激发click事件,等于访问后台c#函数: 方法二:1.函数声明为public后台代码(把public改成protected也可以)publicstringss(){return("

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

JavaScript调用ASP.NET后台代码: 方法一:         1.首先建立一个按钮,在后台将调用或处理的内容写入button_click中; 2.在前台写一个js函数,内容为document.getElementById("btn1").click(); 3.在前台或后台调用js函数,激发click事件,等于访问后台c#函数: 方法二: 1.函数声明为public 后台代码(把public改成protected也可以) public string methodname()

ASP.NET中JavaScript 调用后台代码

前序:在不需要右击页面或回发的情况下刷新页面,即JS调用后台代码: 方法一:调用隐藏服务端按钮的点击事件 1.在前端放一个隐藏按钮,将需要调用的后台代码写入OnClick事件中; 2.在前台写一个js函数,函数体为document.getElementById("<%=btnID.ClientID%>").click(); 3.在需要刷新的地方调用js函数,即可调用按钮OnClick事件: 4.此方法适用无返回值: 方法二:JS中直接用<%=MethodName()%

Android的WebView通过JS调用java代码

做项目时候会遇到我们用WebView 打开一个web,希望这个web可以调用自己的一些方法,比如我们在进一个web页面,然后当我们点击web上的某个按钮时,希望能判断当前手机端是否已经登录,如果未登录,那么就会跳转到登录页面(登陆页面是另一个Activity).这个时候,一个简单的做法就是在按钮动作事件的js上调用java的方法,从而起到判断是否登录,并决定是否跳转到另一个页面. Google的WebView为我们提供了 addJavascriptInterface(Object obj, St

Android的JS调用Java代码或使用了Javascript相关技术改如何混淆

http://www.androidren.com/index.php?qa=282&qa_1=android的js调用java代码或使用了javascript相关技术改如何混淆 Android 4.2开始 JS调用Java代码的时候必须加上@JavascriptInterface才能调用. 加上@JavascriptInterface之后就必须要考虑混淆时候的问题,如果混淆的时候把@JavascriptInterface搞丢了你的程序就无法调用了. 其实很简单,你只需要在混淆里面加上: -ke

[ios]js调用oc代码(oc)

用途:在ios开发中,经常回用到js调用oc代码的时候,例如在网页上有个拍照和打电话的按钮,想打开系统自带的拍照和电话的时候,就需要用到js调用oc代码的功能. 实现原理:在webView加载html网页的时候,没当发送一个请求,就会调用<UIWebViewDelegate>代理的 - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIW

ajaxpro——js调用后台的方法

前提:添加并引用类库ajaxpro.dll 1.把引用的类库改为自己(如果是自己的话,就不用修改): <%@ Page Language="C#" AutoEventWireup="true" Inherits="ProductList" CodeBehind="ProductList.aspx.cs" ValidateRequest="false" %> 注意顺序 2.去掉后台代码的命名空间或

js调用后台方法 (AjaxPro.2.dll的基本使用)

1. 在web.config文件中的<system.web>加入以下设置 <add verb="POST,GET" path="*.ashx" type="AjaxPro.AjaxHandlerFactory,AjaxPro.2" /> 2. 添加一个页面,页面名称为Defalut.aspx 在后台Defalut.aspx.cs页面写以下代码: protected void Page_Load(object sender,