
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Table Stripes and Row Locking</title>
<style type="text/css">
body {background:#fff;}
h1 {font:bold 20px/26px Arial;}
p, li, td {font:normal 12px/17px Arial;}
table {border:0;border-collapse:collapse;}
td {padding:4px;}
th {font:bold 12px/17px Arial;text-align:left;padding:4px;border-bottom:1px solid #333;}
tr.odd {background:#e4dcd9;}
tr.highlight {background:#BDA9A2;}
tr.selected {background:#4a1200;color:#fff;}
td+td+td {text-align:right;}
</style>
<script type="text/javascript">
function addLoadEvent(func) {
var oldonload = window.onload;
if (typeof window.onload != 'function') {
window.onload = func;
} else {
window.onload = function() {
oldonload();
func();
}
}
}
function addClass(element,value) {
if (!element.className) {
element.className = value;
} else {
newClassName = element.className;
newClassName+= " ";
newClassName+= value;
element.className = newClassName;
}
}
function stripeTables() {
var tables = document.getElementsByTagName("table");
for (var m=0; m<tables.length; m++) {
if (tables[m].className == "pickme") {
var tbodies = tables[m].getElementsByTagName("tbody");
for (var i=0; i<tbodies.length; i++) {
var odd = true;
var rows = tbodies[i].getElementsByTagName("tr");
for (var j=0; j<rows.length; j++) {
if (odd == false) {
odd = true;
} else {
addClass(rows[j],"odd");
odd = false;
}
}
}
}
}
}
function highlightRows() {
if(!document.getElementsByTagName) return false;
var tables = document.getElementsByTagName("table");
for (var m=0; m<tables.length; m++) {
if (tables[m].className == "pickme") {
var tbodies = tables[m].getElementsByTagName("tbody");
for (var j=0; j<tbodies.length; j++) {
var rows = tbodies[j].getElementsByTagName("tr");
for (var i=0; i<rows.length; i++) {
rows[i].oldClassName = rows[i].className
rows[i].onmouseover = function() {
&nbs