Skip to content

Instantly share code, notes, and snippets.

@ciccarone
Created April 22, 2020 14:47
Show Gist options
  • Save ciccarone/19c34b49852a4abfdd76e2eb35424bea to your computer and use it in GitHub Desktop.
Save ciccarone/19c34b49852a4abfdd76e2eb35424bea to your computer and use it in GitHub Desktop.
jQuery(document).ready(function( $ ) {
var linetypes = new Array();
var items = new Array();
var subitems = new Array();
$('.specs tr').each(function() {
if(linetypes.indexOf($(this).data('linetype')) === -1){
linetypes.push($(this).data('linetype'));
}
if(items.indexOf($(this).data('item')) === -1){
items.push($(this).data('item'));
}
if(subitems.indexOf($(this).data('subitem')) === -1){
subitems.push($(this).data('subitem'));
}
});
var option = '<option value="">- SELECT -</option>';
for (var i=0;i<linetypes.length;i++){
option += '<option value="'+ linetypes[i] + '">' + linetypes[i] + '</option>';
}
$('select[name="linetype__select"]').append(option);
var option = '<option value="">- SELECT -</option>';
for (var i=0;i<items.length;i++){
option += '<option value="'+ items[i] + '">' + items[i] + '</option>';
}
$('select[name="item__select"]').append(option);
var option = '<option value="">- SELECT -</option>';
for (var i=0;i<subitems.length;i++){
option += '<option value="'+ subitems[i] + '">' + subitems[i] + '</option>';
}
$('select[name="subitem__select"]').append(option);
linetype_val = false;
item_val = false;
subitem_val = false;
$('.spec__search input[type="submit"]').click(function(){
var linetype_val = $('select[name="linetype__select"]').val();
var item_val = $('select[name="item__select"]').val();
var subitem_val = $('select[name="subitem__select"]').val();
if (linetype_val && item_val && subitem_val) {
$('tr').hide()
.filter('[data-linetype="'+linetype_val+'"][data-item="'+item_val+'"][data-subitem="'+subitem_val+'"]')
.show();
}
if (!linetype_val && item_val && subitem_val) {
$('tr').hide()
.filter('[data-item="'+item_val+'"][data-subitem="'+subitem_val+'"]')
.show();
}
if (!linetype_val && !item_val && subitem_val) {
$('tr').hide()
.filter('[data-subitem="'+subitem_val+'"]')
.show();
}
if (!linetype_val && item_val && !subitem_val) {
$('tr').hide()
.filter('[data-item="'+item_val+'"]')
.show();
}
if (linetype_val && item_val && !subitem_val) {
$('tr').hide()
.filter('[data-linetype="'+linetype_val+'"][data-item="'+item_val+'"]')
.show();
}
if (linetype_val && !item_val && !subitem_val) {
$('tr').hide()
.filter('[data-linetype="'+linetype_val+'"]')
.show();
}
});
function filter(a, e){
$('tr').hide()
.filter('[data-'+a+'="'+ e +'"]')
.show(); // show the filtered elements
}
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment