var lastVisibleRow = null; function makeIndPickBox(tbl) { var AllNames = new Array(); var lastName = ''; var rows = tbl.getElementsByTagName('tr'); for (var i=1; i < rows.length; i++) { var name = rows[i].getElementsByTagName('td')[1].innerHTML; if (name != ' ') AllNames.push(name); } AllNames.sort(); var DistinctNames = new Array(); for (var i=0; i < AllNames.length; i++) { var name = AllNames[i]; if (name != lastName) DistinctNames.push(name); lastName = name; } var sel = document.createElement('select'); document.getElementById('boxdiv').appendChild(sel); addOpt(sel, '(all countries)', ''); for (var i=0; i < DistinctNames.length; i++) { addOpt(sel, DistinctNames[i], DistinctNames[i]); } attachEventListener(sel, 'change', selChanged); } function setLVR(thick){ if (lastVisibleRow != null) { var cells = lastVisibleRow.getElementsByTagName('td'); for (var i=0; i < cells.length; i++) cells[i].style.borderBottomWidth = thick ; } } function selChanged(e) { setLVR(1) var sel = document.getElementsByTagName('select')[0]; var rows = document.getElementsByTagName('table')[0].getElementsByTagName('tr'); var nam = sel.options[sel.selectedIndex].value; var altRow = true; var lastRank = ''; for (var i = 1; i < rows.length; i++) { if (rows[i].getElementsByTagName('td')[1].innerHTML == nam || sel.selectedIndex == 0) { rows[i].style.display = ''; if (rows[i].getElementsByTagName('td')[0].innerHTML != lastRank) altRow = !(altRow); if (altRow) rows[i].className = 'A'; else rows[i].className = ''; lastRank = rows[i].getElementsByTagName('td')[0].innerHTML ; lastVisibleRow = rows[i]; } else rows[i].style.display = 'none'; } setLVR(2); var tail = document.getElementById('tail'); if (sel.selectedIndex == 0) { tail.innerHTML = ''; } else { tail.innerHTML = '
A total of ' + //rows[rows.length - 1].getElementsByTagName('td')[0].innerHTML.match(/[0-9]+/) (rows.length - 1)*8 + ' students took this test.'; } } function addOpt(sel, optText, optValue) { var opt = document.createElement('option'); opt.text = optText; opt.value = optValue; try{ sel.add(opt); } catch (eXcpt) { sel.add(opt, null); } } function attachEventListener(target, eventType, functionRef, capture) { if (typeof target.addEventListener != "undefined") { target.addEventListener(eventType, functionRef, capture); } else if (typeof target.attachEvent != "undefined") { target.attachEvent("on" + eventType, functionRef); } else { eventType = "on" + eventType; if (typeof target[eventType] == "function") { var oldListener = target[eventType]; target[eventType] = function() { oldListener(); return functionRef(); }; } else { target[eventType] = functionRef; } } }