Code:<!DOCTYPE html> <html> <head> <title>Table Row Demo</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <style type="text/css"> tr.normal td { color: black; background-color: white; } tr.highlighted td { color: white; background-color: red; } tr.highlighted2 td { color: white; background-color: blue; } </style> </head> <body> <div id="results" class="scrollingdatagrid"> Current Row: <select id="rownum"> <option value="0" selected>None</option> </select> <table id="mstrTable" cellspacing="0" border="1"> <thead> <tr> <th>File Number</th> <th>Date1</th> <th>Date2</th> <th>Status</th> <th>Num.</th> </tr> </thead> <tbody> <tr> <td>KABC</td> <td>09/12/2002</td> <td>09/12/2002</td> <td>Submitted</td> <td>1</td> </tr> <tr> <td>KCBS</td> <td>09/11/2002</td> <td>09/11/2002</td> <td>Lockdown</td> <td>2</td> </tr> <tr> <td>WFLA</td> <td>09/11/2002</td> <td>09/11/2002</td> <td>Submitted</td> <td>3</td> </tr> <tr> <td>WTSP</td> <td>09/15/2002</td> <td>09/15/2002</td> <td>In-Progress</td> <td>4</td> </tr> </tbody> </table> <br /><br /><br /> Current Row: <select id="rownum2"> <option value="0" selected>None</option> </select> <table id="mstrTable2" cellspacing="0" border="1"> <thead> <tr> <th>File Number</th> <th>Date1</th> <th>Date2</th> <th>Status</th> <th>Num.</th> </tr> </thead> <tbody> <tr> <td>KABC</td> <td>09/12/2002</td> <td>09/12/2002</td> <td>Submitted</td> <td>1</td> </tr> <tr> <td>KCBS</td> <td>09/11/2002</td> <td>09/11/2002</td> <td>Lockdown</td> <td>2</td> </tr> <tr> <td>WFLA</td> <td>09/11/2002</td> <td>09/11/2002</td> <td>Submitted</td> <td>3</td> </tr> <tr> <td>WTSP</td> <td>09/15/2002</td> <td>09/15/2002</td> <td>In-Progress</td> <td>4</td> </tr> </tbody> </table> </div> <script type="text/javascript"> function zxcHighlightRow(o){ var tbl=document.getElementById(o.TableID),s=document.getElementById(o.SelectID),ncls=o.NormalClass,hcls=o.HighlightClass,i=o.Highlight,k=true; if (tbl&&tbl.rows[2]){ var rows=tbl.rows,z0=1,z1=0; for (;z0<rows.length;z0++){ if (s&&s.getElementsByTagName('OPTION')[0]){ o=document.createElement('option'); o.value=z0; s.appendChild(o); o.text = rows[z0].cells[0].innerHTML+' ('+z0+')'; } this.addevt(rows[z0],'click','change',z0); } s?this.addevt(s,'change','change'):null; k?this.addevt(document,'keydown','key'):null; this.addevt(document,'click','focus') o=this; o.s=s o.tbl=tbl; o.rows=rows; o.hr=rows[0]; o.n=typeof(i)=='number'?i:0; o.ncls=ncls; o.hcls=hcls; o.change(typeof(i)=='number'?i:0); } } zxcHighlightRow.prototype={ change:function(n){ var o=this,n=typeof(n)=='number'?n:o.s?o.s.selectedIndex:0; o.s?o.s.selectedIndex=0:null; o.hr.className=o.ncls; o.n=n=Math.min(Math.max(n,0),o.rows.length); if (n>0&&o.rows[n]){ o.hr=o.rows[n] o.hr.className=o.hcls; o.s?o.s.selectedIndex=n:null; } }, focus:function(p1,e){ e.cancelBubble=true; if (e.stopPropagation){ e.stopPropagation(); } var eobj=e.target?e.target:e.srcElement; while (eobj.parentNode){ if (eobj==this.tbl||eobj==this.s){ zxcHighlightRow.o=this; return false; } eobj=eobj.parentNode; } }, key:function(p1,e){ if (zxcHighlightRow.o==this){ this.change(this.n+(e.keyCode==38?-1:e.keyCode==40?1:0)); } }, addevt:function(o,t,f,p,p1){ var oop=this; o.addEventListener?o.addEventListener(t,function(e){ return oop[f](p,e);},false):o.attachEvent?o.attachEvent('on'+t,function(e){ return oop[f](p,e); }):null; } } new zxcHighlightRow({ TableID:'mstrTable', SelectID:'rownum', NormalClass:'normal', HighlightClass:'highlighted2', KeyDown:true }); new zxcHighlightRow({ TableID:'mstrTable2', SelectID:'rownum2', NormalClass:'normal', HighlightClass:'highlighted', Highlight:2, KeyDown:true }); </script> </body> </html>



Reply With Quote



Bookmarks