Dashboards & Visualizations

How can I reference a search job in JavaScript?

christoffertoft
Communicator

Im doing some custom javascript magic in a dashboard were I have a need for re-running a search

<search id="rerun_me_after_button_is_clicked">
<query> ... </query>
</search>

How can I rerun this in my javascript through referring to the id? (or some other identifier)?

my idea is something like:

var sm = new SearchManager({
  id: "rerun_me_after_button_is_clicked",
  earliest_time: "-24h@h",
  latest_time: "now",
  preview: true,
  cache: false
  }

sm.StartSearch()

Not sure if this is how it works though?

Labels (1)
0 Karma
1 Solution

kamlesh_vaghela
SplunkTrust
SplunkTrust

Hi @christoffertoft,

Can you please try by adding below line to execute search ?

mvc.Components.get("rerun_me_after_button_is_clicked").startSearch();

Your javascript would be like this

    require([
        'underscore',
        'jquery',
        'splunkjs/mvc',     
        'splunkjs/mvc/simplexml/ready!'], function (_, $, mvc) {
        ( 'splunkjs/mvc/simplexml/ready!',  )

        .
        .
        .
        .
mvc.Components.get("rerun_me_after_button_is_clicked").startSearch();
    .
        .
        .
        .

});

Thanks

View solution in original post

493669
Super Champion

Try this:

require([
      'underscore',
      'jquery',
      'splunkjs/mvc',
      'splunkjs/mvc/tableview',
      'splunkjs/mvc/simplexml/ready!'
  ], function(_, $, mvc, TableView) {

  $(document).ready(function () {
         $("#mybutton").on("click", function (e) {
            var mySearch = mvc.Components.get("rerun_me_after_button_is_clicked");
            mySearch.startSearch();
         });
     });

  });

christoffertoft
Communicator

Thanks, that did the trick! I can't award you both with the answer unfortunately, but you get a point at least! 🙂

0 Karma

kamlesh_vaghela
SplunkTrust
SplunkTrust

Hi @christoffertoft,

Can you please try by adding below line to execute search ?

mvc.Components.get("rerun_me_after_button_is_clicked").startSearch();

Your javascript would be like this

    require([
        'underscore',
        'jquery',
        'splunkjs/mvc',     
        'splunkjs/mvc/simplexml/ready!'], function (_, $, mvc) {
        ( 'splunkjs/mvc/simplexml/ready!',  )

        .
        .
        .
        .
mvc.Components.get("rerun_me_after_button_is_clicked").startSearch();
    .
        .
        .
        .

});

Thanks

sandyBDF
Engager

that don't work for me i have a buton like this (in the code source) :

id="button_update" class="btn" data-set-token="run_check" data-value="true" style="background-color:#68E674;"

and the js : equire([
'underscore',
'jquery',
'splunkjs/mvc',
'splunkjs/mvc/tableview',
'splunkjs/mvc/simplexml/ready!'
], function(_, $, mvc, TableView) {

$(document).ready(function () {
$("button_update").on("click", function (e) {
var mySearch = mvc.Components.get("toto");
mySearch.startSearch();
});
});

});
But the search never start any idea ?

0 Karma

richgalloway
SplunkTrust
SplunkTrust

If the accepted answer doesn't work for you then you should post a new question describing your particular situation.

---
If this reply helps you, Karma would be appreciated.
0 Karma

christoffertoft
Communicator

Thank you! That helped 🙂

0 Karma
Get Updates on the Splunk Community!

Introducing the 2024 SplunkTrust!

Hello, Splunk Community! We are beyond thrilled to announce our newest group of SplunkTrust members!  The ...

Introducing the 2024 Splunk MVPs!

We are excited to announce the 2024 cohort of the Splunk MVP program. Splunk MVPs are passionate members of ...

Splunk Custom Visualizations App End of Life

The Splunk Custom Visualizations apps End of Life for SimpleXML will reach end of support on Dec 21, 2024, ...