我的表格中有9列。我已经可以过滤第二列。如何过滤其他列,并同时保留第一个过滤器的结果?
我为每列尝试了单独的函数,但是该函数将覆盖另一个函数,并且无法正常工作。
<p> Filter by Activities:<select id="myactivity" onchange="myActivity()" class='form-control' style="width: 30%">
<option>a</option>
<option>b</option>
<option>c</option>
<option>d</option>
<option>e</option>
<option>f</option>
<option>g</option>
<option>h</option>
<option>i</option>
<option>j</option>
</select> </p>
function myActivity() {
var input, filter, table, tr, td, i;
input = document.getElementById("myactivity");
filter = input.value.toUpperCase();
table = document.getElementById("example");
tr = table.getElementsByTagName("tr");
for (i = 0; i < tr.length; i++) {
/* search column index 1 */
td = tr[i].getElementsByTagName("td")[1];
if (td) {
if (td.innerHTML.toUpperCase().indexOf(filter) > -1) {
tr[i].style.display = "";
} else {
tr[i].style.display = "none";
}
}
}
}
为了防止有人遇到我同样的问题,我已经找到了对此问题的参考。