Запуск сценария железного питона, связанного с элементом управления spotfire с помощью jquery - PullRequest
2 голосов
/ 19 мая 2019

У меня есть текстовая область, разработанная в формате html (по линиям тайла KPI) с установленным контроллером точечного огня (значение KPI). В настоящее время функциональность заключается в том, что при щелчке элемента управления spotfire визуализация шаблона изменяется на основе сценария ironpython.

Я хочу расширить эту функциональность, чтобы при щелчке в любом месте фрагмента hpml KPI срабатывал контрольный щелчок.

Я могу зафиксировать событие click для элемента HTML, но когда я запускаю событие click для элемента SF, требуемое действие не запускается.

Например:

$(".kpivalue").click(function(){
   this.children("SpotfireControl").trigger("click");
});
<DIV class=kpivalue><SpotfireControl id="1234567890xxx" /></DIV>

1 Ответ

0 голосов
/ 20 мая 2019

Я ответил слишком быстро раньше.упс!

элементы управления не отображаются как элементы;это заполнители или токены, которые заменяются на HTML при рендеринге.

в случае Caluclated Value, сгенерированный DOM выглядит так:

<div id="myContainerDiv">
  <span id="randomGUID1" style>
    <span id="randomGUID2" viewid="randomGUID2" class="EmbeddedMiniatureVisualization" ...>
      <span class="actionCell" style="...">theCalculatedValueValue</span>
    </span>
  </span>
</div>

, таким образом, когда вы хотите нацелиться наФактическое расчетное значение, вам нужно что-то вроде

$("#myContainerDiv").click(function(){
   $(this).children("actionCell").trigger("click");
});

, поскольку DOM Spotfire может быть немного странным, вы должны быть немного странным сами :) Я понимаю, что .trigger("click") вызовет щелчок по элементу JQuery, но не по фактическому DOM.для этого вам понадобится что-то вроде:

$(".kpivalue").click(function(){
   this.children("SpotfireControl")[0].click();
});

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