Самое простое расширение того, что у вас уже есть, может быть:
for (i = 0; i < tr.length; i++) {
var line = "";
td = tr[i].getElementsByTagName("td")[1];
if (td) line += td.innerHTML.toUpperCase();
td = tr[i].getElementsByTagName("td")[3];
if (td) line += td.innerHTML.toUpperCase();
td = tr[i].getElementsByTagName("td")[7];
if (td) line += td.innerHTML.toUpperCase();
if (line.indexOf(filter) > -1) {
tr[i].style.display = "";
} else {
tr[i].style.display = "none";
}
Если вы прекратите смешивать jquery и ваниль javascript, вы получите:
tr = $("table tr");
tr.each(function() {
// which ever columns are required
$(this).toggle($("td:eq(1),td:eq(2),td:eq(6)", tr).text().toUpperCase().indexof(filter) > -1);
}
(или используйте .filter вместо .each для одной строки)