Script

本类阅读TOP10

·一个简单的javascript菜单
·网站流量统计代码
·可编辑的 HTML JavaScript 表格控件 DataGrid II
·JavaScript通用库(一)
·在网页中控制wmplayer播放器
·层遇到select框时
·TYPEING TEST ON LINE 在线打字测试 Free Software Javascript (aiiiq)
·javascript表单之间的数据传递!
·让网页自动穿上外套
·搜索gb2312汉字在网上的频率

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
表格排序技巧

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

表格排序的方法

 代码如下:

<HTML> <HEAD> <SCRIPT> function Table (tBody, tHead) { this.tBody = tBody; this.tHead = tHead.constructor == Array ? tHead : new Array(); this.view = null; } function Table_sort (compFun, col) { compFun = compFun || compRows; compFun.col = col ? col : 0; this.tBody.sort(compFun); if (this.view) this.view.update(); } Table.prototype.sort = Table_sort; function compRows (row1, row2) { var sortCol = compRows.col; var value1 = row1[sortCol]; var value2 = row2[sortCol]; return value1 < value2 ? -1 : value1 == value2 ? 0 : 1; } function compRowsNum (row1, row2) { var sortCol = compRowsNum.col; var value1 = parseFloat(row1[sortCol]); var value2 = parseFloat(row2[sortCol]); return value1 < value2 ? -1 : value1 == value2 ? 0 : 1; } function TableView (model, left, top) { this.id = TableView.cnt; TableView.views[TableView.cnt++] = this; this.model = model; this.model.view = this; this.left = left || 0; this.top = top || 0; this.writeLayer(); } function TableView_writeLayer () { var html = ''; html += '<STYLE>'; html += '#tableView' + this.id + ' {'; html += ' position: absolute;'; html += ' left: ' + this.left + 'px;'; html += ' top: ' + this.top + 'px'; html += '}'; html += '<\/STYLE>'; html += '<DIV ID="tableView' + this.id + '"'; html += '>'; html += this.getHTML(this.model); html += '<\/DIV>'; document.write(html); if (document.all) this.layer = document.all['tableView' + this.id]; else if (document.layers) this.layer = document['tableView' + this.id]; else if (document.getElementById) this.layer = document.getElementById('tableView' + this.id); } TableView.prototype.writeLayer = TableView_writeLayer; function TableView_update () { var html = this.getHTML(); if (document.layers) { if (!this.layer) this.layer = document['tableView' + this.id]; this.layer.document.open(); this.layer.document.write(html); this.layer.document.close(); } else if (document.all) this.layer.innerHTML = html; else if (document.createRange) { var r = document.createRange(); if (!this.layer) this.layer = document.getElementById('tableView' + this.id); while (this.layer.hasChildNodes()) this.layer.removeChild(this.layer.lastChild); r.setStartAfter(this.layer); var docFrag = r.createContextualFragment(html); this.layer.appendChild(docFrag); } } TableView.prototype.update = TableView_update; function TableView_getHTML () { var tHead = this.model.tHead; var rows = this.model.tBody; var html = ''; html += '<TABLE border=1>'; for (var r = 0; r < tHead.length; r++) { html += '<TR>'; for (var c = 0; c < tHead[r].length; c++) { html += '<TH>' html += tHead[r][c]; html += '<\/TH>'; } html += '<\/TR>'; } for (var r = 0; r < rows.length; r++) { html += '<TR>'; for (var c = 0; c < rows[r].length; c++) { html += '<TD>' html += rows[r][c]; html += '<\/TD>'; } html += '<\/TR>'; } html += '<\/TABLE>'; return html; } TableView.prototype.getHTML = TableView_getHTML; TableView.cnt = 0; TableView.views = new Array(); </SCRIPT> <SCRIPT> var tHead = [ [ '<A HREF="javascript: void 0" ONCLICK="table1.sort(); ' + 'return false;">姓名<\/A>', '<A HREF="javascript: void 0" ONCLICK="table1.sort(null, 1); ' + 'return false;">课程<\/A>', '<A HREF="javascript: void 0" ONCLICK="table1.sort(compRowsNum, 2);' + ' return false;">分数<\/A>']]; var tBody = [['Meng', '语文', 100], ['孟子', '外语', 99], ['小孟', '数学', 300] ]; var table1 = new Table(tBody, tHead); var table1View; </SCRIPT> </HEAD> <BODY> <SCRIPT> table1View = new TableView (table1, 100, 100); </SCRIPT> </BODY> </HTML>



相关文章

相关软件




月光软件程序下载编程文档电脑教程网站设计网址导航网络文学游戏天地幽默笑话生活休闲写作范文安妮宝贝
电脑技术编程开发网络专区谈天说地情感世界游戏元素分类游戏热门游戏体育运动手机专区业余爱好影视沙龙
音乐天地数码广场教育园地科学大观古今纵横谈股论金人文艺术医学保健动漫图酷二手专区地方风情各行各业

月光软件站·版权所有