jquery 如何在highcharts工具提示中添加onclick事件处理程序

qhhrdooz  于 2023-06-22  发布在  jQuery
关注(0)|答案(2)|浏览(167)

我在我的php应用程序中使用了highcharts(Line)。我想在工具提示中使用onclick事件处理程序来打开模式对话框。但是我没有找到任何解决方案,即使在highcharts中也没有工具提示项的点击事件。我也在工具提示中使用了格式化程序选项,但它不起作用。请在这个问题上帮助我
我在试这个

tooltip: {
    useHtml: true,
    formatter: function () {
        var s = '<b>' + this.x + '</b>';
        $.each(this.points, function (i, point) {
            s += '<br/><span style="color:' + point.series.color + '">\u25CF</span>\n\ <span onclick="my_function();">Click Me</span> ' + point.series.name + ': ' + point.y;
        });
        return s;
    },
    shared: true
}

但是当我点击"Click Me"时my_function没有调用

6ovsh4lw

6ovsh4lw1#

我从highcharts上得到了我的问题的答案

tooltip: {
    useHTML: true,
    formatter: function () {
        var s = '<b>' + this.x + '</b>';
        $.each(this.points, function (i, point) {
            s += '<br/><span style="color:' + point.series.color + '">\u25CF</span>\n\ <span onclick="my_function();">Click Me</span> ' + point.series.name + ': ' + point.y;
        });
        return s;
    },
    shared: true
}

我用useHtml做了一个拼写错误,但它实际上是useHTML。现在我的问题解决了。

crcmnpdw

crcmnpdw2#

试试这个,我在span中添加了tooltipClick

{
    useHtml: true,
    formatter: function () {
        var s = '<b>' + this.x + '</b>';
        $.each(this.points, function (i, point) {
            s += '<br/><span style="color:' + point.series.color + '">\u25CF</span>\n\ <span class="tooltipClick">Click Me</span> ' + point.series.name + ': ' + point.y;
        });
        return s;
    },
    shared: true
}

并委托了事件处理程序

$(document).on('click','.tooltipClick',function(){
      console.log($(this).parent()); //get the tooltip
      alert('a toolip was clicked')
});

相关问题