在Javascript中从类中访问函数?

时间:2013-06-01 06:03:06

标签: c# javascript asp.net web amcharts

我正在尝试在我的Asp.net网页上构建一个图表,我的代码如下代码隐藏文件

            string WriteStr = "";
            WriteStr = "";
            WriteStr += "<?xml version='1.0' encoding='UTF-8'?>";
            if (DtIndsutry.Rows.Count > 0)
            {
                WriteStr += "<chart>";
                WriteStr += "<series>";
                for (int i = 0; i < DTTable.Rows.Count; i++)
                {

                    WriteStr += "<value xid='" + i + "'>";

                    string Data = DTTable.Rows[i]["Name"].ToString();

                    WriteStr += Data;
                    WriteStr += "</value>";
                }


                WriteStr += "</series>";
                WriteStr += "<graphs>";
                WriteStr += "<graph gid='1'>";
            }
            for (int i = 0; i < DTTable.Rows.Count; i++)
            {

                WriteStr += "<value xid='" + i + "'>";

                string percent= DTTable.Rows[i]["Percent"].ToString();

                WriteStr += percent;
                WriteStr += "</value>";
            }


            WriteStr += "</graph>";

            WriteStr += "</graphs>";
            WriteStr += "</chart>";

            Response.Write(WriteStr);

并在我的 aspx页面

            <script type="text/javascript" language="javascript">

     function GetBarChart() {

        var RequestUrl = "../Client/ChartPage.aspx";

        var oi = new SWFObject("../amcolumn/amcolumn.swf", "CategoryRet", "1000", "280", "8", "#ffffff");
        oi.addVariable("path", "../amcolumn/");
        oi.addVariable("settings_file", encodeURIComponent("../amcolumn/amcolumn_settings_mf.xml"));
        oi.addParam("wmode", "opaque");
        oi.addVariable("data_file", encodeURIComponent(RequestUrl));
        oi.write("GetBarChart");
    }

        <div id="GetBarChart">
            <script language="javascript" type="text/javascript">
                GetBarChart();
            </script>
        </div>

现在我的问题是当我的代码背后包含一些其他代码时,当我尝试创建此图表时会发生什么,数据以xml格式打印在我的网页顶部,我不想要,

但是当我为图表创建一个单独的类时,图表显示正常。 然而,第二种方法的问题是每个图表我必须创建一个新类,这也是不推荐的。

我怎么能实现这个目标? 我可以使用javascript访问类中的方法吗?

谢谢大家

1 个答案:

答案 0 :(得分:0)

您是否尝试过使用Page.ClientScript.RegisterStartupScript()?

string jsScript = null;

jsScript = "<script type='text/javascript'>" + Constants.vbCrLf;
jsScript += "function GetBarChart();" + Constants.vbCrLf;
jsScript += "{" + Constants.vbCrLf;
                /* add your logic here */
jsScript += "}" + Constants.vbCrLf;
jsScript += "</script>";

Page.ClientScript.RegisterStartupScript(this.GetType(), "myscript", jsScript);

您也可以参考此链接http://msdn.microsoft.com/en-us/library/asz8zsxy.aspx