ASP.NET将buttonclick的数据结果传递给javascript

时间:2014-09-22 00:22:50

标签: c# javascript asp.net json

所以我将Analysis.aspx页面作为我网站的一部分,我有两个DropDownLists和一个Button。 在用户从DDL中选择适当的项目并单击按钮后,他应该显示由我使用的javascript(Jchart)驱动的图。

我在buttonclick事件中做了一些计算:

protected void Button1_Click(object sender, EventArgs e)
{
    string idMun = DropDownList1.SelectedValue;
    string year = DropDownList2.SelectedValue;

    int[] fb= getStatsFB(Convert.ToInt32(idMun), Convert.ToInt32(year));
    int[] twitter= getStatsFB(Convert.ToInt32(idMun), Convert.ToInt32(year));
}

现在我要做的就是将fb和twitter整数数组传递给我在Analysis.aspx中的javascript,这样我就可以将这些值作为此脚本的数据输入包含在内,该脚本应该在我的网站上向用户显示图形。 在我的页面加载并且用户选择他的选择并单击按钮之后,我应该使用此数据输入运行此“plot”脚本并在屏幕上显示该图。

任何想法怎么做? 非常感谢, 博:)

1 个答案:

答案 0 :(得分:0)

您可以将服务器端变量写入javascript块,以便在客户端使用,如此

var JSSIDEUSE = '<%= SERVERSIDEVARIABLE %>';

现在在你的情况下,因为你有数组,上面的方法不会工作...而是你可以将整数数组转换为逗号分隔的字符串并在脚本标记中转储该字符串

在计算功能内的服务器上

var fbString = string.Join(",", fb);
var twitterString = string.Join(",", twitter);

在脚本块内的HTML代码中使用以下内容。请注意'(单引号)。没有那个

就行不通
<script type="text/javascript">
   var fbString = '<%= fbString %>';
   var twitterString = '<%= twitterString %>';
</script>

现在这些变量都写在JS中,随时可以使用。 您需要将这些变量转换回绘图函数内的数组,或者在传递给函数

之前
var fbArray = fbString.split(",");