• 黑马程序员-.net中前台javascript与后台C#交互


    如何在JavaScript访问后台C#方法、变量

    方法一:使用Ajax开发框架,后台方法定义前添加[AjaxPro.AjaxMethod],然后就可以在前台js脚本中调用后台C#函数。

    方法二:后台方法声明为public或者protected,然后前台使用js脚本进行调用。

    .cs

    public string Str()

        {

            return "javaScript函数中执行后台C#方法..";

    }

    .aspx

    <script type="text/javascript">

            var a = "<%=Str()%>";

        alert(a);

    </script>

    方法三:使用Session变量

    .cs

    if (Session["siteName"] == null)//判断是否存在指定Key值的Session变量

                    Session["siteName"] = "";//如果不存在则创建Session变量

                //给Session["siteName"]变量赋值

    .aspx

    var siteName="<%=Session["siteName"] %>";

    方法四

    <asp:Button ID="Button1" runat="server" onclick="Button1_Click" style="display:none;"/>

    <input type="button" id="btnSave " value="保存" onclick="GetBehind ();return false;" />

    .aspx.cs

        <script type="text/javascript">

    //调用后台方法

    //使用这种方式调用后台代码,可以在调用之前在前台做一些验证

            function GetBehind() {

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

            }

    </script>

    .cs

    protected void Button1_Click(object sender, EventArgs e)

    {}

    如何在后台C#代码中执行javaScript函数

    方法一:void Page.RegisterStartupScript(string key,string script);

    方法二:使用隐藏域或者Literal控件,在前台使用js脚本把一些js函数控制的值写进隐藏域或者Literal控件,然后前台使用Hidden.Value或者Literal.Text读取前台值。

    .aspx

    function GetTitleID(obj)

    {

        sTitleID=obj

        if(sTitleID!=null)

            document.getElementById("HiddenField1").value=type+','+sTitleID;

        else

            document.getElementById("HiddenField1").value=type+',0';

    }

    .cs

    string hiddenValue = this.HiddenField1.Value;

  • 相关阅读:
    Python 猜数小程序(练习)
    Mysql 字符串日期互转
    MaxCompute 语句笔记
    数据仓库架构
    Python 比较两个字符串的相似度
    Python print
    Python简单计算器
    HashMap为什么线程不安全(死循环+数据丢失过程分析)
    浅谈ArrayList、Vector和LinkedList
    JAVA对象的浅克隆和深克隆
  • 原文地址:https://www.cnblogs.com/binxinquan/p/3155065.html
Copyright © 2020-2023  润新知