zoukankan      html  css  js  c++  java
  • javascrip t函数中执行C#代码中的函数

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

     

    方法一: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方法为前台接受结果的方法。  

     例子:  

     

    后台代码:  

     

     [System.Web.Services.WebMethod]  

        public static string ShowValue()  

        {  

            return "js调用后台方法";  

        }  

      前台代码:  

     <script type="text/javascript">  

            function bclick()  

            {  

                PageMethods.ShowValue(sshow);  

            }  

     

            function sshow(val)       //回传方法用val接受后台代码ShowValue的执行结果  

            {  

                document.getElementById("show").innerText = val;  

            }  

             </script>  

      <input id="Button1" type="button" value="click" onclick="bclick();" />  

      

      <div id="show">  

       </div>  

  • 相关阅读:
    (Java) LeetCode 44. Wildcard Matching —— 通配符匹配
    (Java) LeetCode 30. Substring with Concatenation of All Words —— 与所有单词相关联的字串
    (Java) LeetCode 515. Find Largest Value in Each Tree Row —— 在每个树行中找最大值
    (Java) LeetCode 433. Minimum Genetic Mutation —— 最小基因变化
    (Java) LeetCode 413. Arithmetic Slices —— 等差数列划分
    (Java) LeetCode 289. Game of Life —— 生命游戏
    (Java) LeetCode 337. House Robber III —— 打家劫舍 III
    (Java) LeetCode 213. House Robber II —— 打家劫舍 II
    (Java) LeetCode 198. House Robber —— 打家劫舍
    (Java) LeetCode 152. Maximum Product Subarray —— 乘积最大子序列
  • 原文地址:https://www.cnblogs.com/zxh1141/p/2874254.html
Copyright © 2011-2022 走看看