Dashboards & Visualizations
Highlighted

Why is my multiselect dynamic delimiter with token not updating on token element change?

Contributor

Dear All,

I have put a token in place of a multi-select's delimiter in order to realize an AND/OR switch for the options.

     <input type="multiselect" token="field2">
      <label>Extra Options</label>
      <default>ALL</default>
      <choice value="*">ALL</choice>
      <choice value="SEO_SEC=1">Sec</choice>
      <choice value="SEO_ACC=1">Acc</choice>
      <choice value="SEO_ORA=1">Ora</choice>
      <delimiter> $field3$ </delimiter>

    </input>
    <input type="dropdown" token="field3" searchWhenChanged="true">
      <label>field3</label>
      <choice value="OR">Or</choice>
      <choice value="AND">And</choice>
      <default>OR</default>
     </input>
.......................................................
 index=* .... | search ...   ($field2$)

The problem I have is:
that only way to have the change of the dropdown field3 effective, is to change something in the multiselect field2!

How can I have the change of field3 set the right delimiter on field2 and run the search?

best regards
Altin

ps. Simple XML - best

0 Karma
Highlighted

Re: Why is my multiselect dynamic delimiter with token not updating on token element change?

SplunkTrust
SplunkTrust

@altink

I have used javascript for this. Can you please try this?

<form script="conditional_multiselect.js">
  <label>Conditional Multiselect</label>
  <fieldset submitButton="false">
   <input type="multiselect" token="field2" id="field2_id" >
       <label>Extra Options</label>
       <default>ALL</default>
       <choice value="*">ALL</choice>
       <choice value="SEO_SEC=1">Sec</choice>
       <choice value="SEO_ACC=1">Acc</choice>
       <choice value="SEO_ORA=1">Ora</choice>
       <delimiter> $field3$ </delimiter>
     </input>
     <input type="dropdown" id="field3_id" token="field3" searchWhenChanged="true">
       <label>field3</label>
       <choice value="OR">Or</choice>
       <choice value="AND">And</choice>
       <default>OR</default>
      </input>
  </fieldset>
  <row>
    <panel>
      <html>
        $field2$
      </html>
    </panel>
  </row>
</form>

conditional_multiselect.js

require(["jquery", "splunkjs/mvc", "splunkjs/mvc/simplexml/ready!"], function($, mvc) {
   var field3 = mvc.Components.get("field3_id");
  //  headerView.render();
  field3.on("change",function(){
    var field2 = mvc.Components.get("field2_id");
    field2.render();     
  })
  console.log("Hiwwwww",field3);
});

Thanks

0 Karma
Highlighted

Re: Why is my multiselect dynamic delimiter with token not updating on token element change?

Contributor

Dear @kamlesh_vaghela

thank you very much for your reply, but I forgot to mention, that I need it done by Simple XML only and no extra things. will update on body

thank you very much again.

best regards,
Altin

0 Karma