Highcharts Treemap Название плитки Блокировка Нажмите - PullRequest
1 голос
/ 28 января 2020

У меня есть карта дерева Highcharts с идентификатором для каждой основной плитки:

{
  id: '<%= datum['name'] %> - <%= datum['name'] %>',
  name: '<%= datum['name'] + "-" + datum['name'] %>'
},
{
    name: '',
    parent: '<%= datum['name'] %> - <%= datum['name'] %>',
    value: <%= datum['high_risk'] %>,
    color: "#ed6d00",
    className: 'risks <%= datum['id'] %>'
}, {
    name: '',
    parent: '<%= datum['name'] %> - <%= datum['name'] %>',
    value: <%= datum['low_risk'] %>,
    color: "#2acdc6",
    className: 'risks <%= datum['id'] %>'
}, {
    name: '',
    parent: '<%= datum['name'] %> - <%= datum['name'] %>',
    value: <%= datum['moderate_risk'] %>,
    color: "#ffe80a",
    className: 'risks <%= datum['id'] %>'
}

Каждая основная плитка состоит из 3 внутренних плиток. Я использую AJAX, поэтому при нажатии на любую из внутренних плиток я показываю модальное представление. Проблема, с которой я столкнулся, заключается в том, что имя на главной плитке блокирует щелчок. Когда я нажимаю на имя, ничего не происходит. Есть ли способ заставить клик работать как на имя, так и на плитки? Или есть способ, чтобы клик проходил через имя, чтобы клик регистрировался на основной плитке?

1 Ответ

0 голосов
/ 29 января 2020

Я думаю, что хорошим подходом было бы реализовать эту функциональность внутри события click series или, возможно, даже лучше использовать функцию обратного вызова click в определенной точке для вашего случая.

Демонстрация для серии щелкните: https://jsfiddle.net/BlackLabel/mjb9pc0L/

Код:

events: {
  click(e) {
    console.log("industry click");
    e.preventDefault();
            console.log(e)
    var industryId = (e.target).className.baseVal.split(' ')[2];
    console.log(industryId);

    $.ajax({
      type: "GET",
      url: 'https://www.google.com',
      dataType: 'script',
      success: function(result) {
        console.log("success!!");
        console.log(result);
        //eval(result);
      },
      error: function() {
        console.log("error!!");
      }
    });
  }
},

API: https://api.highcharts.com/highcharts/series.treemap.events.click

API для события щелчка точки : https://api.highcharts.com/highcharts/series.treemap.point.events.click

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...