从后面的asp.net代码调用jquery函数

时间:2013-12-05 05:18:06

标签: asp.net

我需要在 bootstrap 中创建一个饼图。在谷歌搜索中,我得到了一段代码.. 如何从asp.net codebehind调用此函数?如何将数据从数据库提供给饼图?

$.plot('#placeholder', data, {
    series: {
        pie: {
            show: true
        }
    }
});

2 个答案:

答案 0 :(得分:1)

尝试

protected void myButton(object sender, EventArgs e)
{
    ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "tmp", 
       "<script type='text/javascript'>placeholder(params...);</script>", false);
}

答案 1 :(得分:0)

我建议相反,让你的jQuery代码通过ASP.NET AJAX页面方法调用服务器端,如下所示:

$(document).ready(function() {
    // For example's sake, this will ask the database for 
    // data upon the DOM being loaded
    $.ajax({
        type: "POST",
        url: "PageName.aspx/GetPieChartData",
        data: "{}",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function(result) {
            // Plot result data returned from AJAX call to server
            $.plot('#placeholder', result.d, {
                series: {
                    pie: {
                        show: true
                    }
                }
            });
        }
    });
});

  

注意:您需要将PageName.aspx重命名为实际的.aspx页面名称。


代码隐藏:

[WebMethod]
public static string GetPieChartData()
{
    // Go to database and retrieve pie chart data
    string data = GetPieChartDataFromDatabase();

    return data;
}

  

注意:ASP.NET AJAX页面方法自动对返回的数据进行JSON编码,因此服务器端不需要进行序列化调用。另外,请注意ASP.NET AJAX页面方法必须是静态的,因为它们与实际的页面类本身没有交互。