advance store query
HTML
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/dojo/1.8.3/dijit/themes/claro/claro.css">
<div>
<div id="fs"></div>
</div>
JavaScript
require(["dojo/store/Memory", "dijit/form/FilteringSelect"],
function(Memory, FilteringSelect) {
var someData = [
{id:"ADMINISTRATIVE_GENDER", name:"Administrative Gender"},
{id:"AGE_GROUP", name:"Age Group"},
{id:"CPT", name:"CPT"},
{id:"ENCOUNTER_HL7", name:"Encounter (HL7)"},
{id:"HUMAN_LANGUAGE", name:"Human Language"},
{id:"ICD9_CM", name:"ICD9-CM"},
{id:"ICD10_CM", name:"ICD10-CM"},
{id:"LOINC", name:"LOINC"},
{id:"MESH", name:"MeSH"},
{id:"NDC", name:"NDC"},
{id:"OBSERVATION_INTERPRETATION", name:"Observation Interpretation"},
{id:"PARTNERS", name:"Partners HealthCare System"},
{id:"PROVIDER_NUCC", name:"Provider (NUCC)"},
{id:"RACE_ETHNICITY_CDC", name:"Race and Ethnicity (CDC)"},
{id:"RXNORM", name:"RxNorm"},
{id:"SNOMEDCT", name:"SNOMED-CT"},
{id:"TASK_HL7", name:"Task (HL7)"},
{id:"UCUM", name:"UCUM"},
{id:"VACCINES_CDC", name:"Vaccines (CDC)"}
];
var masterStore = new Memory({
data: someData
});
var isInList = function(list) {
return function(object) {
return list.lastIndexOf(object.id) > -1
}
}
// cache the query results to speed up filteringSelect
var selectStore = new Memory({
data: masterStore.query(isInList(["MESH","CPT","UCUM"]))
});
new FilteringSelect({
store: masterStore,
searchAttr:"name",
placeHolder:"Select System",
style:"6em"
}, "fs")
});