![](/img/trans.png)
[英]Spotfire - javascript to trigger IronPython script to be executed on report load
[英]How to run an IronPython Script on Spotfire Dashboard load
我想在加載Spotfire儀表板時自動運行IronPython代碼。 我遇到過一些博客,但由於我是Spotfire的新手,因此不是很詳細。
這種方法很笨重,如果有人有,我寧願選擇更好的解決方案。
我使用JScript(您可以在文本區域的編輯HTML部分找到並添加)和按鈕(我隱藏這樣,以便任何人都無法看到或單擊它)來執行此操作。
JScript的:
$(function () {
function executeScript() {
$('#hiddenBtn input').click();
}
$(document).ready(function(){executeScript()});
});
HTML:
<Span style="display:none" id="hiddenBtn">
<SpotfireControl id="f8322a6109af43fb935ad6e7bcb1f1fc" /></span>
HiddenButton上的IronPython腳本:
if Document.Properties["OpenedYet"] == False:
Document.Properties["OpenedYet"] = True
## Script you are trying to run on open here
我不喜歡這種方法主要是因為它對開發人員來說有多煩人。 每次要保存分析時,都需要進入文檔屬性並將OpenedYet的Property值(我作為布爾值)從True切換為False,然后在點擊保存按鈕之前不能單擊任何其他內容。 它還有一個限制,要求您在第一頁上有一個文本區域,這至少需要一些不動產。
這對您來說也可能有問題,因為您有桌面用戶; 如果他們中的任何人有權保存分析,他們可以將OpenedYet屬性設置為True來保存它,因此當它打開時它將不會運行。
嘗試使用一個標志,這樣js只執行一次。這是一個例子 -
$(document).ready(function()
{
if(!document.readyFlag)
{
$("#02bf0a06832f4689b1e97fd2ba9e3ec4").trigger("click");
document.readyFlag=true;
}
})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.