Depending on the specifics, you need to be certain at least one result will occur in your search. I'm using a similar dynamic checkbox list to display sourcetypes.
my search is 5 searches (four are appended to the first) just to get my "List" of checkboxes.
<input type="checkbox" searchWhenChanged="true" token="VisibleRows">
<search id="Check">
index=$Index$ $HowFarBack$ sourcetype="mySource1" | fields sourcetype | head1 | stats dc(sourcetype) as Checklist by sourcetype | eval Checklist=if(Checklist>0,"MyCheckbox1","") | table Checklist | append [search index=$Index$ $HowFarBack$ sourcetype="mySource2" | fields sourcetype | head1 | stats dc(sourcetype) as Checklist by sourcetype | eval Checklist=if(Checklist>0,"MyCheckbox2","") | table Checklist] | append [search index=$Index$ $HowFarBack$ sourcetype="mySource3" | fields sourcetype | head1 | stats dc(sourcetype) as Checklist by sourcetype | eval Checklist=if(Checklist>0,"MyCheckbox3","") | table Checklist] | append [search index=$Index$ $HowFarBack$ sourcetype="mySource4" | fields sourcetype | head1 | stats dc(sourcetype) as Checklist by sourcetype | eval Checklist=if(Checklist>0,"MyCheckbox4","") | table Checklist] | append [search index=$Index$ $HowFarBack$ sourcetype="mySource5" | fields sourcetype | head1 | stats dc(sourcetype) as Checklist by sourcetype | eval Checklist=if(Checklist>0,"MyCheckbox5","") | table Checklist]
</search>
<fieldForLabel>Checklist</fieldForLabel>
<fieldForValue>Checklist</fieldForValue>
<default>None</default>
</input>
The default for $Index$ is *
The default for $HowFarBack$ is earliest=-14d@d latest=now
The token for $Index$ is produced by a dropdown, and $HowFarBack$ is produced by a static radio list
The number of results in Checklist will produce the same list of checkbox values/labels
With this search, if there is no "mySource1" then the line will yield zero $job.resultCount$ and there will be no results for Checklist (which is preferable to a blank line in my case because one of the sourcetypes will appear in Checklist, just not necessarily all five).
Essentially the search yields dynamic results (but in this case a single field named Checklist will hold the entire list of results), which will end up as a checkbox for each result.
Hope this Helps.
... View more