JSFiddle - React, Tailwind, and code Playground
JavaScript
$.fn.filterSearch = function(){
var $datatable = $(this);
var search = $("#engine-search").val();
var course_list = $("#filter-course").val();
var group_list = $("#filter-group-course").val();
var rowlist = [];
if(course_list != null || group_list != null){
$datatable.find("tbody tr").each(function(index, element){
var coursegroup = $(element).attr("data-coursegroup").split(",");
var courselist = $(element).attr("data-courselist").split(",");
var add = '';
$.each(coursegroup, function(key, value){
if(in_array(value, group_list) && add != 'ok'){
add = 'ok';
}
});
$.each(courselist, function(key, value){
if(in_array(value, course_list) && add != 'ok'){
add = 'ok';
}
});
if(add == 'ok'){ rowlist.push($(element));}
});
}
$datatable.DataTable()
.rows(rowlist)
.search(search)
.draw();
}