JSFiddle - React, Tailwind, and code Playground
HTML
<label><input type="checkbox" name="chk_filter_Grocery_1" id="chk_filter_Grocery_1_1" value="1;">Alamond</label>
<label><input type="checkbox" name="chk_filter_Grocery_1" id="chk_filter_Grocery_1_2" value="14;">Apple</label>
<label><input type="checkbox" name="chk_filter_Grocery_1" id="chk_filter_Grocery_1_3" value="5;6;">Lemon & Orange</label>
<label><input type="checkbox" name="chk_filter_Grocery_1" id="chk_filter_Grocery_1_4" value="17;">Coconut</label>
<table width="620px" id="Grocery-NA768">
<tbody>
<tr class="14">
<td width="185" height="35" align="left">Apple</td>
<td width="65" height="35" align="center" valign="middle">3 Kg</td>
<td width="80" height="35" align="center" valign="middle">28/07/2011</td>
</tr>
<tr class="5">
<td height="35" align="left">Lemon</td>
<td height="35" align="center" valign="middle">5 Kg</td>
<td height="35" align="center" valign="middle">28/07/2011 </td>
</tr>
<tr class="17">
<td height="35" align="left">Coconut</td>
<td height="35" align="center" valign="middle">4 Kg</td>
<td height="35" align="center" valign="middle">28/07/2011 </td>
</tr>
<tr class="14">
<td height="35" align="left">Apple</td>
<td height="35" align="center" valign="middle">2 Kg</td>
<td height="35" align="center" valign="middle">27/04/2011 </td>
</tr>
<tr class="1">
<td height="35" align="left">Almond</td>
<td height="35" align="center" valign="middle">3 Kg</td>
<td height="35" align="center" valign="middle">27/04/2011 </td>
</tr>
<tr class="6">
<td height="35" align="left">Orange</td>
<td height="35" align="center" valign="middle">3 kg</td>
<td height="35" align="center" valign="middle">27/04/2011 </td>
</tr>
...
JavaScript
// Define some config objects and loop over them to get things set up
$.each([{
table: $("#Grocery-NA768"),
inputs: $("input[name='chk_filter_Grocery_1']")
}],function(i, obj){
var list = [];
obj.inputs.click(function() {
var that = $(this),
value = that.val().match(/\d+/g),
rows = obj.table.find("tr");
// If its checked then add it to the list
if ( that.prop("checked") ) {
list = $.merge(list, value);
} else {
// if its not then remove the items from the list
list = $.map( list, function( x ) {
return ( $.inArray( x, value ) > -1 ) ? null : x;
});
}
// If the list has items
if ( list.length ) {
rows.hide() // hide all rows
.filter("."+list.join(",.")) // find the ones we care about
.show(); // and show them
} else {
// If no items in the list
rows.show(); // show every row
}
});
});