if have 3 sets of checkboxes (each set contains n number of checkboxes), , checkboxes pulling same data set, how incorporate "and" functionality if select item or 2 1st set of checkboxes , select checkbox or 2 2nd set of checkboxes, items match displayed...essentially each checkbox (per set of checkboxes) filter? similar functionality here: http://jsfiddle.net/jessica_b/7ugdx/
var disar = new array(); function cboxfilet(actionadd, idlist) { if (actionadd == true) { (var r in idlist) { disar.push(idlist[r]); } alert("add: " + disar); } else { (r in idlist) { var loc = disar.indexof(idlist[r]); disar.splice(loc, 1); } alert("remove: " + disar); } }
i think array.filter method solve problem you. here's rough example below:
var properties = { //this object have changed when user selects different checkboxes filter1: <>, filter2: <>, ... filtern: <> }; var disar = objarray.filter(function(elem){ for(property in properties){ if(!item[property]){ return false; } } return true; });
please note checks presence of each filter in array of objects, , can change checks specific rules. (eg 'age' > 30)