前些天用htc解决table的一些常见用法:表头与表体分离,点击表头排序,列宽可调整 (望大家支持)
其中up.gif、down.gif表示排序的方向,大家自己做一个就OK了(10*10)。
先贴html代码
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML xmlns:myTable>
<HEAD>
<TITLE>myTable</TITLE>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=GB2312">
<style>
<!--
body{
margin-top: 10pt;
margin-left: 10pt;
margin-right: 10pt;
font-family: arial, 'trebuchet ms', helvetica;
background-color: #D4D0C8;
overflow:hidden;
}
nobr.forMyTable{
font-size: 12px;
}
span.forMyTable{
overflow: hidden;
width:100%;
text-overflow: ellipsis;
}
table.list{
border : 0px;
background-color: #808080;
width:100%;
height:100%;
border-collapse:collapse;
table-layout:fixed;
}
tr.listTitle{
background-color: #d4d0c8;
cursor : hand;
}
tr.listContent{
background-color: #ffffff;
color :#000000;
}
tr.selectedContent{
background-color: #0a246a;
color :#ffffff;
}
@media all {
myTable\:title {
behavior:url(titleInMyTable.htc);
width:100%;
height:100%;
overflow:hidden;
}
myTable\:bottom {
width:100%;
height:100%;
overflow:hidden;
}
myTable\:body {
behavior:url(bodyInMyTable.htc);
width:100%;
height:100%;
overflow-x:auto;
overflow-y:scroll;
}
}
-->
</style>
</HEAD>
<body onselectstart="event.returnValue = false;">
<!-------------------------
说明:
1、将普通的table切为3块:<myTable:title><myTable:body><myTable:bottom>,其中<myTable:bottom>可以自由定义。
2、<myTable:title><myTable:body><myTable:bottom>里直接定义table,不得再嵌套其他标签。
3、<myTable:title>和<myTable:body>里的table列数必须相等,宽度必须设置为一样。
4、目前<myTable:body>里的table数据是用客户端循环写出,可以将它更改为您的代码。
5、拖动<myTable:title>里的table上的白色边框,可以实现列宽的调整。
6、点击<myTable:title>里的标题,可以对该列进行客户端排序。暂时未支持分页功能。
如果要屏蔽该功能,将titleInMyTable.htc文件第2行:<PUBLIC:ATTACH EVENT="onclick" ONEVENT="bubbleSortRows()"/>删除即可。
7、如果您对css不是很熟悉,建议不要改动文件里的css设置。
---------------------------->
<!-------------------------以下是第1个table-------------------------------------->
<table height="40%" width="100%" cellspacing="0" cellpadding="0" border="0">
<tr height="20">
<td>
<myTable:title>
<table class="list" cellspacing="1" cellpadding="0" border="0">
<tr class="listTitle">
<td width="80"><span class="forMyTable"><nobr class="forMyTable">ID号</nobr></span></td>
<td width="80"><span class="forMyTable"><nobr class="forMyTable">ID号ID号ID号ID号ID号ID号</nobr></span></td>
<td width="80"><span class="forMyTable"><nobr class="forMyTable">编号</nobr></span></td>
<td width="80"><span class="forMyTable"><nobr class="forMyTable">姓名</nobr></span></td>
<td width="80"><span class="forMyTable"><nobr class="forMyTable">别名</nobr></span></td>
<td width="80"><span class="forMyTable"><nobr class="forMyTable">代号</nobr></span></td>
<td width="80"><span class="forMyTable"><nobr class="forMyTable">绰号</nobr></span></td>
<td width="80"><span class="forMyTable"><nobr class="forMyTable">性别</nobr></span></td>
<td></td>
</tr>
</table>
</myTable:title>
</td>
<td width="16"><!--这一列留给myTable:body的滚动条,宽度可以调整--> </td>
</tr>
<tr>
<td colspan="2">
<myTable:body>
<table class="list" cellspacing="1" cellpadding="0" border="0">
<script>
<!--
for (var i=0;i<10;i++){
document.write("<tr class=\"listContent\">");
document.write("<td width=\"80\"><span class=\"forMyTable\"><nobr class=\"forMyTable\">02000000000001</nobr></span></td>");
document.write("<td width=\"80\"><span class=\"forMyTable\"><nobr class=\"forMyTable\">02000000000001</nobr></span></td>");
document.write("<td width=\"80\"><span class=\"forMyTable\"><nobr class=\"forMyTable\">"+i+"</nobr></span></td>");
document.write("<td width=\"80\"><span class=\"forMyTable\"><nobr class=\"forMyTable\">"+(100-i)+"</nobr></span></td>");
document.write("<td width=\"80\"><span class=\"forMyTable\"><nobr class=\"forMyTable\">"+(100+i)+"</nobr></span></td>");
document.write("<td width=\"80\"><span class=\"forMyTable\"><nobr class=\"forMyTable\">"+i+"</nobr></span></td>");
document.write("<td width=\"80\"><span class=\"forMyTable\"><nobr class=\"forMyTable\">234565477234565477</nobr></span></td>");
document.write("<td width=\"80\"><span class=\"forMyTable\"><nobr class=\"forMyTable\">$^$%&^&*$^$%&^&*</nobr></span></td>");
document.write("<td></td>");
document.write("</tr>");
}
-->
</script>
</table>
</myTable:body>
</td>
</tr>
<tr height="20">
<td>
<myTable:bottom>
<table class="list" cellspacing="1" cellpadding="0" border="0">
<tr class="listTitle">
<td width="100%"><span class="forMyTable"><nobr class="forMyTable">程序开发: joe</nobr></span></td>
</tr>
</table>
</myTable:bottom>
</td>
<td width="16"><!--这一列留给myTable:body的滚动条,宽度可以调整--> </td>
</tr>
</table>
<br>
<!-------------------------以下是第2个table-------------------------------------->
<table height="40%" width="100%" cellspacing="0" cellpadding="0" border="0">
<tr height="20">
<td>
<myTable:title>
<table class="list" cellspacing="1" cellpadding="0" border="0">
<tr class="listTitle">
<td width="80"><span class="forMyTable"><nobr class="forMyTable">ID号</nobr></span></td>
<td width="80"><span class="forMyTable"><nobr class="forMyTable">ID号ID号ID号ID号ID号ID号</nobr></span></td>
<td width="80"><span class="forMyTable"><nobr class="forMyTable">编号</nobr></span></td>
<td width="80"><span class="forMyTable"><nobr class="forMyTable">姓名</nobr></span></td>
<td width="80"><span class="forMyTable"><nobr class="forMyTable">别名</nobr></span></td>
<td width="80"><span class="forMyTable"><nobr class="forMyTable">代号</nobr></span></td>
<td width="80"><span class="forMyTable"><nobr class="forMyTable">绰号</nobr></span></td>
<td width="80"><span class="forMyTable"><nobr class="forMyTable">性别</nobr></span></td>
<td></td>
</tr>
</table>
</myTable:title>
</td>
<td width="16"><!--这一列留给myTable:body的滚动条,宽度可以调整--> </td>
</tr>
<tr>
<td colspan="2">
<myTable:body>
<table class="list" cellspacing="1" cellpadding="0" border="0">
<script>
<!--
for (var i=0;i<50;i++){
document.write("<tr class=\"listContent\">");
document.write("<td width=\"80\"><span class=\"forMyTable\"><nobr class=\"forMyTable\">02000000000001</nobr></span></td>");
document.write("<td width=\"80\"><span class=\"forMyTable\"><nobr class=\"forMyTable\">02000000000001</nobr></span></td>");
document.write("<td width=\"80\"><span class=\"forMyTable\"><nobr class=\"forMyTable\">"+i+"</nobr></span></td>");
document.write("<td width=\"80\"><span class=\"forMyTable\"><nobr class=\"forMyTable\">"+(100-i)+"</nobr></span></td>");
document.write("<td width=\"80\"><span class=\"forMyTable\"><nobr class=\"forMyTable\">"+(100+i)+"</nobr></span></td>");
document.write("<td width=\"80\"><span class=\"forMyTable\"><nobr class=\"forMyTable\">"+i+"</nobr></span></td>");
document.write("<td width=\"80\"><span class=\"forMyTable\"><nobr class=\"forMyTable\">234565477234565477</nobr></span></td>");
document.write("<td width=\"80\"><span class=\"forMyTable\"><nobr class=\"forMyTable\">$^$%&^&*$^$%&^&*</nobr></span></td>");
document.write("<td></td>");
document.write("</tr>");
}
-->
</script>
</table>
</myTable:body>
</td>
</tr>
<tr height="20">
<td>
<myTable:bottom>
<table class="list" cellspacing="1" cellpadding="0" border="0">
<tr class="listTitle">
<td width="100%"><span class="forMyTable"><nobr class="forMyTable">如有任何建议意见,请联系: joe_xubin@hotmail.com</nobr></span></td>
</tr>
</table>
</myTable:bottom>
</td>
<td width="16"><!--这一列留给myTable:body的滚动条,宽度可以调整--> </td>
</tr>
</table>
</body>
</HTML>