Projekt - 1
Niestety filtry działają tylko pojednyńczo tzn. wybranie kryteriów w filtrze nr dwa czyści wybrane pozycje w innych filtrach. Nie wiem jak sobie z tym poradzić. Nie wiem jak to dokładnie opisać ale jak sprawić aby filtry działały razem i wybierały tylko wspólne dla siebie nawzajem elementy?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1250" /> <link rel="stylesheet" href="style.css" type="text/css" /> </head> <body> <table border="1" id="sortable"> <thead> <tr id="tabh"> </tr> <tr id="tabh_filtr"> <th> </th> <th> <div id="filtr_wymiar"> </div> </th> <th align="left"> <div id="filtr_wymiar"> </div> </th> <th align="left"> <div id="filtr_grubosc"> </div> </th> </thead> <tbody> <tr id=""> </tr> <tr id="tabb1"> </tr> <tr id="tabb1"> </tr> <tr id="tabb1"> </tr> <tr id="tabb1"> </tr> <tr id="tabb1"> </tr> <tr id="tabb1"> </tr> <tr id="tabb1"> </tr> </tbody> </table> </body> </html>
Kod
function filtr_start1()
{
var METAL = document.getElementById("METAL");
var PLASTIK = document.getElementById("PLASTIK");
var SZKLO = document.getElementById("SZKLO");
table = document.getElementById("sortable").rows;
var table_length = table.length;
if(METAL.checked || PLASTIK.checked || SZKLO.checked)
{
for(var i = 2; i < table_length; i++)
{
if((table[i].cells[1].innerHTML == METAL.value && METAL.checked) ||
(table[i].cells[1].innerHTML == PLASTIK.value && PLASTIK.checked) ||
(table[i].cells[1].innerHTML == SZKLO.value && SZKLO.checked) )
{
table[i].style.display = "";
}
else
{
table[i].style.display = "none";
}
}
}
else
{
for(var i = 2; i < table_length; i++)
{
table[i].style.display = "";
}
}
}
function filtr_start2()
{
var WYMIAR8x8 = document.getElementById("WYMIAR8x8");
var WYMIAR10x10 = document.getElementById("WYMIAR10x10");
var WYMIAR19x19 = document.getElementById("WYMIAR19x19");
var WYMIAR25x25 = document.getElementById("WYMIAR25x25");
table = document.getElementById("sortable").rows;
var table_length = table.length;
if(WYMIAR8x8.checked || WYMIAR10x10.checked || WYMIAR19x19.checked || WYMIAR25x25.checked)
{
for(var i = 2; i < table_length; i++)
{
if((table[i].cells[2].innerHTML == WYMIAR8x8.value && WYMIAR8x8.checked) ||
(table[i].cells[2].innerHTML == WYMIAR10x10.value && WYMIAR10x10.checked) ||
(table[i].cells[2].innerHTML == WYMIAR19x19.value && WYMIAR19x19.checked) ||
(table[i].cells[2].innerHTML == WYMIAR25x25.value && WYMIAR25x25.checked) )
{
table[i].style.display = "";
}
else
{
table[i].style.display = "none";
}
}
}
else
{
for(var i = 2; i < table_length; i++)
{
table[i].style.display = "";
}
}
}
function filtr_start3()
{
var GRUBOSC_105 = document.getElementById("GRUBOSC_105");
var GRUBOSC_150 = document.getElementById("GRUBOSC_150");
var GRUBOSC_190 = document.getElementById("GRUBOSC_190");
table = document.getElementById("sortable").rows;
var table_length = table.length;
if(GRUBOSC_105.checked || GRUBOSC_150.checked || GRUBOSC_190.checked)
{
for(var i = 2; i < table_length; i++)
{
if((table[i].cells[3].innerHTML == GRUBOSC_105.value && GRUBOSC_105.checked) ||
(table[i].cells[3].innerHTML == GRUBOSC_150.value && GRUBOSC_150.checked) ||
(table[i].cells[3].innerHTML == GRUBOSC_190.value && GRUBOSC_190.checked) )
{
table[i].style.display = "";
}
else
{
table[i].style.display = "none";
}
}
}
else
{
for(var i = 2; i < table_length; i++)
{
table[i].style.display = "";
}
}
}
{
var METAL = document.getElementById("METAL");
var PLASTIK = document.getElementById("PLASTIK");
var SZKLO = document.getElementById("SZKLO");
table = document.getElementById("sortable").rows;
var table_length = table.length;
if(METAL.checked || PLASTIK.checked || SZKLO.checked)
{
for(var i = 2; i < table_length; i++)
{
if((table[i].cells[1].innerHTML == METAL.value && METAL.checked) ||
(table[i].cells[1].innerHTML == PLASTIK.value && PLASTIK.checked) ||
(table[i].cells[1].innerHTML == SZKLO.value && SZKLO.checked) )
{
table[i].style.display = "";
}
else
{
table[i].style.display = "none";
}
}
}
else
{
for(var i = 2; i < table_length; i++)
{
table[i].style.display = "";
}
}
}
function filtr_start2()
{
var WYMIAR8x8 = document.getElementById("WYMIAR8x8");
var WYMIAR10x10 = document.getElementById("WYMIAR10x10");
var WYMIAR19x19 = document.getElementById("WYMIAR19x19");
var WYMIAR25x25 = document.getElementById("WYMIAR25x25");
table = document.getElementById("sortable").rows;
var table_length = table.length;
if(WYMIAR8x8.checked || WYMIAR10x10.checked || WYMIAR19x19.checked || WYMIAR25x25.checked)
{
for(var i = 2; i < table_length; i++)
{
if((table[i].cells[2].innerHTML == WYMIAR8x8.value && WYMIAR8x8.checked) ||
(table[i].cells[2].innerHTML == WYMIAR10x10.value && WYMIAR10x10.checked) ||
(table[i].cells[2].innerHTML == WYMIAR19x19.value && WYMIAR19x19.checked) ||
(table[i].cells[2].innerHTML == WYMIAR25x25.value && WYMIAR25x25.checked) )
{
table[i].style.display = "";
}
else
{
table[i].style.display = "none";
}
}
}
else
{
for(var i = 2; i < table_length; i++)
{
table[i].style.display = "";
}
}
}
function filtr_start3()
{
var GRUBOSC_105 = document.getElementById("GRUBOSC_105");
var GRUBOSC_150 = document.getElementById("GRUBOSC_150");
var GRUBOSC_190 = document.getElementById("GRUBOSC_190");
table = document.getElementById("sortable").rows;
var table_length = table.length;
if(GRUBOSC_105.checked || GRUBOSC_150.checked || GRUBOSC_190.checked)
{
for(var i = 2; i < table_length; i++)
{
if((table[i].cells[3].innerHTML == GRUBOSC_105.value && GRUBOSC_105.checked) ||
(table[i].cells[3].innerHTML == GRUBOSC_150.value && GRUBOSC_150.checked) ||
(table[i].cells[3].innerHTML == GRUBOSC_190.value && GRUBOSC_190.checked) )
{
table[i].style.display = "";
}
else
{
table[i].style.display = "none";
}
}
}
else
{
for(var i = 2; i < table_length; i++)
{
table[i].style.display = "";
}
}
}