从我的.aspx页面获取javascript变量的值

get the values of javascript variables from my .aspx page

本文关键字:javascript 变量 获取 我的 aspx      更新时间:2023-09-26

所以我的任务很简单-我有一个javascript代码(实际上是一个代码与谷歌分析工作;那不重要)

<script>
     ga('ecommerce:addTransaction', {
                'id': '52',                 
                'revenue': '599.200',               
            });
          </script>

的问题是,这些值的id和'收入'我应该得到它从服务器-在这种情况下我的aspx页面。

在我的aspx。cs中,我有一个简单的方法它返回一个对象它有id和revenue属性;任务是将javascript变量与这些属性

连接起来
 protected OrderIndo RenderScript()
  {
    //if (this.OrderID == null) return;
    OrderIndo orderInfo = new OrderInfo();
    orderInfo.id = 12;
    orderInfo.revenue = somestringvariable; 
    return orderInfo;

  }

在代码隐藏类的开头创建OrderIndoprotected变量。在PageLoad上填写。使用

在aspx页面上渲染它
<script>
     ga('ecommerce:addTransaction', {
                'id': '<%=OrderIndo.id%>',                 
                'revenue': '<%=OrderIndo.revenue%>',               
            });
 </script>

当您使用asp.net标记时,我假设您正在使用Asp。Net Web Forms.

你可以简单地在你的代码后面注册javascript,像这样:

    string gaScript = "<script>ga('ecommerce:addTransaction', { 'id': '{0}', 'revenue': '{1}',  });</script>";
    Page.ClientScript.RegisterStartupScript(GetType(), "ga", string.Format(gaScript, orderInfo.id, orderInfo.revenue));

或者在后面的代码中注册变量:

string gaScript = "<script>var gaId='{0}'; var gaRevenue='{1}'</script>";
            Page.ClientScript.RegisterStartupScript(GetType(), "ga", string.Format(gaScript, orderInfo.id, orderInfo.revenue));

并读取javascript中的变量:

<script>
     ga('ecommerce:addTransaction', {
                'id': gaId,                 
                'revenue': gaRevenue,               
            });
          </script>

希望有所帮助