你的位置:首页 > ASP.net教程

[ASP.net教程][转]Asp.Net调用前台js调用后台代码分享


1.C#前台js调用后台代码

前台js

1 <script type="text/javascript" language="javascript">2   function Ceshi()3   {4     var a = "<%=Getstr()%>";5     alert(a);6   }7 </script>8 <input type="button" onclick="Ceshi();" value="js调用后台代码" /> 

后台代码

1 public string Getstr()2 {3   string aa = "你们好啊!";4   return aa;5 }

 

2.C#后台调用前台js代码
前台js

1 <script type="text/javascript" language="javascript">2   function Ceshi()3   {4     var a = "你们好啊!"5     alert(a);6   }7 </script>8 <asp:Button ID="Button1" runat="server" Text="后台调用js" onclick="Button1_Click" />

后台代码

1 protected void Button1_Click(object sender, EventArgs e)2   {3     //如果有UpdatePanel就用如下代码调用前台js4     ScriptManager.RegisterStartupScript(UpdatePanel1, this.Page.GetType(), "", "Ceshi();", true);5     //如果没有就如下代码6     this.Page.ClientScript.RegisterStartupScript(this.Page.GetType(), "", "<script>Ceshi();</script>", true);7   }

3.javascript函数中执行C#代码中的函数:

方法一:1、首先建立一个按钮,在后台将调用或处理的内容写入button_click中;
        2、在前台写一个js函数,内容为document.getElementByIdx("btn1").click();--母版页:  document.getElementById("<%=txtName.ClientID%>"); 
        3、在前台或后台调用js函数,激发click事件,等于访问后台c#函数;

方法二:

1、函数声明为public             
    后台代码(把public改成protected也可以)

1 public string ss()2       {3        return("a");4       }

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

     前台脚本

1 <script language=javascript>2   var a = "<%=ss()%>";3   alert(a);4 </script>

方法三:

 1 <script language="javascript"> 2      <!- - 3       function __doPostBack(eventTarget, eventArgument) 4       { 5        var theForm = document.Form1;   //指runat=server的form 6        theForm.__EVENTTARGET.value = eventTarget; 7        theFrom.__EVENTARGUMENT.value = eventArgument; 8         theForm.submit(); 9       }10      -->11 </script>12 <input id="Button1" type="button" name="Button1" value="按钮" onclick="javascript:__doPostBack('Button1','')">

方法四:

<script language="javascript">function SubmitKeyClick(){  if (event.keyCode == 13)   {    event.cancelBubble = true;    event.returnValue = false;     document.all.FunName.value="你要调用的函数名";     document.form[0].submit();   }}</script><INPUT onkeypress="SubmitKeyClick()" id="aaa" type="text"><input type="hidden" name="FunName"> 〈!--用来存储你要调用的函数 --〉

在.CS里有:

 1 public Page_OnLoad() 2 { 3 if (!Page.IsPost()) 4 { 5 string strFunName=Request.Form["FunName"]!=null?Request.Form["FunName"]:""; 6 //根据传回来的值决定调用哪个函数 7 switch(strFunName) 8 { 9 case "enter()":10 enter() ; //调用该函数11 break;12 case "其他":13 //调用其他函数14 break;15 default:16 //调用默认函数17 break;18 }19 }20 }21 22 public void enter()23 {24 //……比如计算某值25 }