javascript - JS - Filter Data - Using Push & Splice -


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)