ASP.NET中JavaScript 調用後台代碼,asp.netjavascript

來源:互聯網
上載者:User

ASP.NET中JavaScript 調用後台代碼,asp.netjavascript

前序:在不需要右擊頁面或回傳的情況下重新整理頁面,即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 非同步呼叫

百度一大堆

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.