添加ng单击到highcharts ng柱状图xAxis标签

Add ng-click to highcharts-ng column chart xAxis labels

本文关键字:ng xAxis 标签 highcharts 单击 添加      更新时间:2023-09-26

我在一个角度应用程序中使用highcharts ng,当单击xAxis标签时,我需要运行一个函数,请参阅下面我要添加到图表中的类别和标签。

目前,我可以在标签上添加onclick和alert,但无法使用angular。

return "<a onclick='alert(1)'>" + this.value + "</a>";

http://pablojim.github.io/highcharts-ng/

此处为当前代码的工作示例。http://jsfiddle.net/3gLr4vcu/

Angular指令在调用$compile之前不会被处理,这通常是在Angular插入模板时完成的,例如指令和ng-include。如果您自己修改DOM,Angular不知道如何处理HTML,除非您自己调用$compile。在DOM被highcharts ng修改后,您将需要调用$compile,如下所示:

$compile(element)(scope)

理想情况下,您希望element是一个尚未$compiled的元素(如果不是这样,我不确定会发生什么),而scope则是DOM树向上遍历中遇到的第一个作用域。如果不需要作用域层次结构,则可以将元素附加到$rootScope。

您将需要注入$compile(以及$rootScope,如果您按照描述使用它的话)。有关更多信息,请参阅$compile文档,该文档还解释了$compile表达式的奇怪语法。如果您发布完整的代码,我可以告诉您将$compile语句放在哪里,以及如何找到合适的使用范围。

编辑:这是一个正在工作的JSFiddle:http://jsfiddle.net/tsclaus/bpg4556c/