我正在使用MS asp.net 3.5图表控件(金字塔),点击系列/数据点我需要在新窗口中打开一个URL,比如javascript window.open。
现在我已经尝试了很多,但这不起作用。我无法将javascript提供给数据点。
其次我知道如果需要打开一个新窗口,可以将MapAreaAttributes提供给Series,如下所述
series.MapAreaAttributes= "target='_blank'";
但即使这不起作用????
指导我!感谢
答案 0 :(得分:1)
我刚才遇到了同样的问题。
以下是解决方案并且有效:
请注意您的代码中使用的是单引号(')。似乎图表控件不允许这样做。让我举一个可以帮助您理解的例子:
假设您有一个JavaScript函数,当用户单击数据(系列)中的列(点)时,该函数会打开一个窗口,显示一些数据。你可以这样做:
Chart1.Series["MySeries"].Points[0].Url = "javascript:void(0)"; //this is just to tell the browser not follow a URL, since you will control this with your javascript
Chart1.Series["MySeries"].Points[0].MapAreaAttributes = "onclick=\"OpenWindow();\""; //this is to set the onclick attribute to fire your javascript function when the user clicks your column.
在第二行代码中的上述示例中,请注意我使用了双引号而不是单引号。如果你这样写:
"onclick=\'OpenWindow();\'";
它永远不会奏效!你必须使用双引号......
另外,由于我是C#开发人员,你必须使用\“代码来编写双引号,否则会出现编译错误。
我希望这有帮助!