• asp.net调用前台js调用后台代码分享


    C#前台js调用后台代码
    前台js
    <script type="text/javascript" language="javascript">
      function Ceshi()
      {
        var a = "<%=Getstr()%>";
        alert(a);
      }
    </script>
    <input type="button" onclick="Ceshi();" value="js调用后台代码" />
    后台代码
    public string Getstr()
    {
      string aa = "你们好啊!";
      return aa;
    }

    C#后台调用前台js代码
    前台js
    <script type="text/javascript" language="javascript">
      function Ceshi()
      {
        var a = "你们好啊!"
        alert(a);
      }
    </script>
    <asp:Button ID="Button1" runat="server" Text="后台调用js" onclick="Button1_Click" />
    后台代码
    protected void Button1_Click(object sender, EventArgs e)
        {
        //如果有UpdatePanel就用如下代码调用前台js
        ScriptManager.RegisterStartupScript(UpdatePanel1, this.Page.GetType(), "", "Ceshi();", true);
        //如果没有就如下代码
        this.Page.ClientScript.RegisterStartupScript(this.Page.GetType(), "", "<script>Ceshi();</script>", true);
        }

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

    方法二:1、函数声明为public             
                后台代码(把public改成protected也可以)
               public string ss()
                {
                  return("a");
                }
            2、在html里用<%=fucntion()%>可以调用
                前台脚本
               <script language=javascript>
                var a = "<%=ss()%>";
                alert(a);
               </script>
    方法三:1、<script language="javascript">
               <!- -
                function __doPostBack(eventTarget, eventArgument)
                {
                   var theForm = document.Form1;     //指runat=server的form
                   theForm.__EVENTTARGET.value = eventTarget;
                   theFrom.__EVENTARGUMENT.value = eventArgument;
                   theForm.submit();
                }
               -->
               </script>
               <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里有:
    public Page_OnLoad()
    {
    if (!Page.IsPost())
    {
    string strFunName=Request.Form["FunName"]!=null?Request.Form["FunName"]:"";
    //根据传回来的值决定调用哪个函数
    switch(strFunName)
    {
    case "enter()":
    enter() ; //调用该函数
    break;
    case "其他":
    //调用其他函数
    break;
    default:
    //调用默认函数
    break;
    }
    }
    }

    public void enter()
    {
    //……比如计算某值
    }

  • 相关阅读:
    HTML5和CSS3的学习视频
    webpack中bundler源码编写2
    webpack中bundler源码编写
    webpack中如何编写一个plugin
    webpack多页面打包配置
    webpack中配置eslint
    webpack解决单页面路由问题
    webpack中使用WebpackDevServer实现请求转发
    webpack中typeScript的打包配置
    rsync 同步
  • 原文地址:https://www.cnblogs.com/huandong963/p/13928460.html
Copyright © 2020-2023  润新知