在HTML面板中单击图像后,我想设置值或将值传递给令牌
这是我的面板代码:
<form script="my.js">
<row>
<panel>
<html>
<a id="mydivId">
<img src="/static/app/My_app/bck_city.png"/>
</a>
</html>
</panel>
</row>
</form>
在单击上方面板的图像后,以下标记应设置为value (我想在上面的图片上设置token =“ mytoken”,并设置一些值)
<row>
<panel>
<title>mypanel</title>
<event>
<search>
<query>|makeresults
|eval result=$mytoken$
|table result</query>
<earliest>-15m</earliest>
<latest>now</latest>
</search>
<option name="list.drilldown">none</option>
<option name="refresh.display">progressbar</option>
</event>
</panel>
</row>
我还尝试通过.js设置令牌值
require(['underscore',
'jquery',
'splunkjs/mvc',
'splunkjs/mvc/utils',
'splunkjs/mvc/tokenutils',
'splunkjs/mvc/simplexml/ready!'], function ($) {
var utils = require("splunkjs/mvc/utils");
$(document).ready(function () {
$("#mydivId").on("click", function (){
var tokens = mvc.Components.get("default");
var tokenValue = tokens.get("mytoken");
tokens.set("mytoken", "cheese");
});
});
});
答案 0 :(得分:1)
我在这里为您发布了一个示例:
https://github.com/bshuler/splunk_app_for_stackoverflow_questions
但基本知识是:
视图:
<dashboard script="set_token.js">
<row>
<panel>
<title>mytoken = $mytoken$</title>
<html>
<a id="mydivId">
<img src="/static/app/stackoverflow/set_token.jpg"/>
</a>
</html>
</panel>
</row>
<row>
<panel>
<table>
<search id="search1">
<query>| makeresults | eval my_value="$mytoken$"</query>
<earliest>-15m</earliest>
<latest>now</latest>
</search>
<option name="drilldown">none</option>
</table>
</panel>
</row>
</dashboard>
和javascript set_token.js
require([
"splunkjs/mvc",
"splunkjs/mvc/simplexml/ready!"
], function(mvc) {
// Get your div
var my_div = $("#mydivId");
// Respond to clicks
my_div.on("click", function(e) {
var tokens = mvc.Components.get("submitted");
tokens.set("mytoken", "cheese");
});
});