C#前台js调用后台代码

来源:互联网 发布:app客户端制作软件 编辑:程序博客网 时间:2024/05/01 07:09
  1. C#前台js调用后台代码  
  2. 前台js  
  3. <script type="text/javascript" language="javascript">  
  4.   function Ceshi()  
  5.   {  
  6.     var a = "<%=Getstr()%>";  
  7.     alert(a);  
  8.   }  
  9. </script>  
  10. <input type="button" onclick="Ceshi();" value="js调用后台代码" />   
  11. 后台代码  
  12. public string Getstr()  
  13. {  
  14.   string aa = "你们好啊!";  
  15.   return aa;  
  16. }  
  17.   
  18. C#后台调用前台js代码  
  19. 前台js  
  20. <script type="text/javascript" language="javascript">  
  21.   function Ceshi()  
  22.   {  
  23.     var a = "你们好啊!"  
  24.     alert(a);  
  25.   }  
  26. </script>  
  27. <asp:Button ID="Button1" runat="server" Text="后台调用js" onclick="Button1_Click" />  
  28. 后台代码  
  29. protected void Button1_Click(object sender, EventArgs e)  
  30.     {  
  31.     //如果有UpdatePanel就用如下代码调用前台js  
  32.     ScriptManager.RegisterStartupScript(UpdatePanel1, this.Page.GetType(), """Ceshi();"true);  
  33.     //如果没有就如下代码  
  34.     this.Page.ClientScript.RegisterStartupScript(this.Page.GetType(), """<script>Ceshi();</script>"true);  
  35.     }  
  36.   
  37.    
  38.   
  39.    
  40.   
  41. javascript函数中执行C#代码中的函数:  
  42. 方法一:1、首先建立一个按钮,在后台将调用或处理的内容写入button_click中;  
  43.         2、在前台写一个js函数,内容为document.getElementByIdx("btn1").click();--母版页:  document.getElementById("<%=txtName.ClientID%>");   
  44.         3、在前台或后台调用js函数,激发click事件,等于访问后台c#函数;  
  45.   
  46. 方法二:1、函数声明为public               
  47.             后台代码(把public改成protected也可以)  
  48.            public string ss()  
  49.             {  
  50.               return("a");  
  51.             }  
  52.         2、在html里用<%=fucntion()%>可以调用  
  53.             前台脚本  
  54.            <script language=javascript>  
  55.             var a = "<%=ss()%>";  
  56.             alert(a);  
  57.            </script>  
  58. 方法三:1、<script language="javascript">  
  59.            <!- -  
  60.             function __doPostBack(eventTarget, eventArgument)  
  61.             {  
  62.                var theForm = document.Form1;     //指runat=server的form  
  63.                theForm.__EVENTTARGET.value = eventTarget;  
  64.                theFrom.__EVENTARGUMENT.value = eventArgument;  
  65.                theForm.submit();  
  66.             }  
  67.            -->  
  68.            </script>  
  69.            <input id="Button1" type="button" name="Button1" value="按钮" onclick="javascript:__doPostBack('Button1','')">  
  70.           
  71. 方法四:<script language="javascript">  
  72. function SubmitKeyClick()  
  73. {  
  74.     if (event.keyCode == 13)  
  75.      {  
  76.         event.cancelBubble = true;  
  77.         event.returnValue = false;  
  78.          document.all.FunName.value="你要调用的函数名";  
  79.          document.form[0].submit();  
  80.      }  
  81. }  
  82. </script>  
  83.   
  84. <INPUT onkeypress="SubmitKeyClick()" id="aaa" type="text">  
  85. <input type="hidden" name="FunName"> 〈!--用来存储你要调用的函数 --〉  
  86.   
  87. 在.CS里有:  
  88. public Page_OnLoad()  
  89. {  
  90. if (!Page.IsPost())  
  91. {  
  92. string strFunName=Request.Form["FunName"]!=null?Request.Form["FunName"]:"";  
  93. //根据传回来的值决定调用哪个函数  
  94. switch(strFunName)  
  95. {  
  96. case "enter()":  
  97. enter() ; //调用该函数  
  98. break;  
  99. case "其他":  
  100. //调用其他函数  
  101. break;  
  102. default:  
  103. //调用默认函数  
  104. break;  
  105. }  
  106. }  
  107. }  
  108.   
  109. public void enter()  
  110. {  
  111. //……比如计算某值  
  112. }  
  113.   
  114. 分类: JavaScript, net相关知识 
0 0