Hi guys.
Can someone please post working js code for a button that toggles a token from "true" to "false" and back. Have attempted a ton of different js scripts but no dice.
One example that I have tried is below. The file loads and I bump etc.
require([
"splunkjs/mvc",
"splunkjs/mvc/simplexml/ready!"
], function(
mvc
) {
var defaultTokenModel = mvc.Components.get("default");
$("#btn-submit").on("click", function (){
defaultTokenModel.set("clicked","true");
});
});
console.log("hello")
//# sourceURL=submitToken.js
Hi @nick405060 ,
Can you try this and tell me if this is what you are trying to get. I think your on click
event handler is getting called every time but you are setting the value to true
in each case which is not toggling the token value.
require([
"jquery",
"splunkjs/mvc",
"splunkjs/mvc/simplexml/ready!"
], function ($, mvc) {
// get default token model
var tokens = mvc.Components.get("default");
// set default value for token
tokens.set("clicked", "false");
$("#btn-submit").on("click", function () {
console.log("changing token value from " + tokens.get("clicked") + " to " + (tokens.get("clicked")=="true" ? "false" : "true"));
// toggle token value
tokens.set("clicked", tokens.get("clicked")=="true" ? "false" : "true");
});
});
Hi @nick405060 ,
Can you try this and tell me if this is what you are trying to get. I think your on click
event handler is getting called every time but you are setting the value to true
in each case which is not toggling the token value.
require([
"jquery",
"splunkjs/mvc",
"splunkjs/mvc/simplexml/ready!"
], function ($, mvc) {
// get default token model
var tokens = mvc.Components.get("default");
// set default value for token
tokens.set("clicked", "false");
$("#btn-submit").on("click", function () {
console.log("changing token value from " + tokens.get("clicked") + " to " + (tokens.get("clicked")=="true" ? "false" : "true"));
// toggle token value
tokens.set("clicked", tokens.get("clicked")=="true" ? "false" : "true");
});
});
Took me a lot of debugging, but this works if you change "default" to "submitted"
Thank you!!
<form script="submitToken.js">
<label>tester</label>
<row>
<panel>
<html>
<div>
<input id="btn-submit" type="button" value="Click"/>
</div>
</html>
</panel>
</row>
<row>
<panel>
<table>
<search>
<query>
| makeresults | eval message="$clicked$" | table message
</query>
</search>
</table>
</panel>
</row>
</form>