Гораздо лучше дать вашим функциям осмысленные имена.Кроме того, не используйте элемент A, когда кнопка или другой элемент больше подходит (например, стилизованный диапазон).А предназначены для навигации (якоря и ссылки), а не для ведения дел.
Вот пример того, что вы пытаетесь сделать с помощью rowIdex.Удаление и добавление выделения можно поместить в один и тот же цикл, или вы можете вспомнить предыдущие выделенные строки в закрытии, чтобы сделать его немного более эффективным.
Но если вы работаете с менее чем 100строк (или, возможно, намного больше), это не будет иметь никакого значения для воспринимаемой производительности.
<script>
function hilightRows(id, rowindexes) {
var table = document.getElementById(id);
var rows;
if (table && rowindexes) {
// Remove any current highlighting
for (var j=0, jLen = table.rows.length; j < jLen; j++) {
table.rows[j].style.backgroundColor = '';
}
// Add new highlighting
for (var i=0, iLen = rowindexes.length; i<iLen; i++) {
table.rows[rowindexes[i]].style.backgroundColor = 'red';
}
}
}
</script>
<button onclick="hilightRows('t0', [1,2,5])">1, 2, 5</button>
<button onclick="hilightRows('t0', [3,0])">3, 0</button>
<button onclick="hilightRows('t0', [])">Remove highlight</button>
<table id="t0">
<tr><td>.....
<tr><td>.....
<tr><td>.....
<tr><td>.....
<tr><td>.....
<tr><td>.....
<tr><td>.....
</table>