Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var rowhider = function() {
- var tables = document.getElementsByTagName('tbody');
- var maxRows = 5;
- var colspan;
- for(var i = 0, l = tables.length; l > i; i++) {
- var rows = tables[i].getElementsByTagName('tr');
- colspan = rows[0].getElementsByTagName('td').length;
- if(rows.length > maxRows) {
- for(var a = 0, e = rows.length; e > a; a++) {
- if(a >= 5) {
- rows[a].className += " hide";
- }
- }
- var tr = document.createElement('tr');
- tr.innerHTML = "<td colspan='"+colspan+"'><a href='#'>More rows. Click to show...</a></td>";
- tr.getElementsByTagName('a')[0].addEventListener ? tr.getElementsByTagName('a')[0].addEventListener('click',showRows) : tr.getElementsByTagName('a')[0].attachEvent('onclick',showRows);
- tables[i].appendChild(tr);
- }
- }
- function hideRows(e) {
- var target = e.srcElement ? e.srcElement : e.target;
- var tr = target.parentElement;
- while(tr.nodeName !== "TR") {
- tr = tr.parentElement;
- }
- var table = target;
- while(table.nodeName !== "TBODY") {
- table = table.parentElement;
- }
- table.removeChild(tr);
- var rows = table.getElementsByTagName('tr');
- for(var i = 0, l = rows.length; l > i; i++) {
- if(i >= 5) {
- rows[i].className += " hide";
- }
- }
- var tr = document.createElement('tr');
- tr.innerHTML = "<td colspan='"+colspan+"'><a href='#'>More rows. Click to show...</a></td>";
- tr.getElementsByTagName('a')[0].addEventListener ? tr.getElementsByTagName('a')[0].addEventListener('click',showRows) : tr.getElementsByTagName('a')[0].attachEvent('onclick',showRows);
- table.appendChild(tr);
- }
- function showRows(e) {
- var target = e.srcElement ? e.srcElement : e.target;
- var tr = target.parentElement;
- while(tr.nodeName !== "TR") {
- tr = tr.parentElement;
- }
- var table = target;
- while(table.nodeName !== "TBODY") {
- table = table.parentElement;
- }
- var rows = table.getElementsByTagName('tr');
- for(var i = 0, l = rows.length; l > i; i++) {
- var n = rows[i].className.replace(' hide','');
- rows[i].className = n;
- }
- tr.innerHTML = "<td colspan='"+colspan+"'><a href='#'>...hide rows</a></td>";
- tr.getElementsByTagName('a')[0].addEventListener ? tr.getElementsByTagName('a')[0].addEventListener('click',hideRows) : tr.getElementsByTagName('a')[0].attachEvent('onclick',hideRows);
- if(e.preventDefault) {
- e.preventDefault();
- } else {
- return false;
- }
- }
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement