我正在尝试在我的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访问类中的方法吗?
谢谢大家
答案 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