如何从asp.net中的javascript调用codebehind函数?

我想使用javascript从我的代码后面调用一个函数。 我用下面的代码:

function fnCheckSelection() { some script; window["My"]["Namespace"]["GetPart"](null); } 

…其中"GetPart"是函数名称。 但是,这不起作用。 请帮帮我。

在JavaScript中:

  document.getElementById("btnSample").click(); 

服务器端控制:

   

C#

  protected void btnSample_Click(object sender, EventArgs e) { } 

虽然这很简单…

你可以通过ajax调用来做到这一点

这是一个jquery示例:

 $.ajax({ type: "POST", url:"~/code_behind.aspx/Method", data: dataPost, contentType: "application/json; charset=utf-8", dataType: "json", .... }); 

这里是api文档和后面的代码

 [WebMethod] public static yourType Method (Params){} 

或者您可以在updatePanel中添加隐藏按钮,并使用js调用click事件。 ('#<%=ID.ClientID%>').click(); 它会调用OnClientClick,如果它存在,那么你的codeBehind fucntion。

试试这个

你的代码背后的function

 [WebMethod] public static void GetPart() { //your code goes here } 

使用Javascript

 $(document).ready(function () { $("#btnname").click(function () { $.ajax({ type: "POST", url: "/youraspxpagename.aspx/GetPart", contentType: "application/json; charset=utf-8", dataType: "json", success: function (msg) { } }); }); }); 

使用ajax,您可以使用JQuery从javascript调用codebehind函数:

 function : fnCheckSelection(){ $.ajax({ cache: false, url: "/GetPart" type: "POST", success: function (result) { }, error: function (msg) { } }); }