• 实现锁死的有滚动条的div的表格(datagird)


    JS框架使用Jquery

    最终效果:

    代码结构:

    代码:

    <HEAD><TITLE>new document</TITLE>
    <META name=Generator content=EditPlus,Microshaoft>
    <META name=Author content=EditPlus,Microshaoft>
    <META name=Keywords content=EditPlus,Microshaoft>
    <META name=Description content=EditPlus,Microshaoft>
    <SCRIPT type=text/javascript src="jquery-1.9.1.js"></SCRIPT>
    <style type="text/css">
        .tableFix{
            Z-INDEX: 50; 
            POSITION: relative; 
            BACKGROUND-COLOR: #fff; 
            OVERFLOW: hidden; 
            LEFT: 0px;
        }
        .tableHead{
            Z-INDEX: 45; 
            POSITION: relative; 
            BACKGROUND-COLOR: #fff; 
            OVERFLOW: hidden; 
            LEFT: 0px;
        }
        .tableColumn{
            Z-INDEX: 40; 
            POSITION: relative; 
            BACKGROUND-COLOR: #fff; 
            OVERFLOW: hidden; 
            LEFT: 0px;
        }
        .tableData{
            Z-INDEX: 35; 
            POSITION: relative; 
            OVERFLOW: scroll; 
            LEFT: 0px;
        }
        .sa {
            color: #000000;
            font-size: 12px;
            font-family: "微软雅黑";
            
        }
    </style>
    <SCRIPT type=text/javascript>
    $(document).ready(function () {
        FixTable("MyTable", 1,600, 300,47,30);
    });
    /**
    _tableHead里的table的要比宽度应该要比_tableData里的table的宽度多17(在_tableHead的最后一列上),这样可达到上下表格包括滚动条上下完全对齐的效果
    参数:
    TableID:table的ID
    FixColumnNumber:锁定的列的个数
    width:div的宽度
    height:div的高度
    headWidth:锁死列表头的宽度
    headHeight:表头的高度
    */
    function FixTable(TableID,FixColumnNumber, width, height,headWidth,headHeight) {
        $("#" + TableID + "_tableLayout").css("width",width);
        $("#" + TableID + "_tableLayout").css("height",height+headHeight);
        
        $("#" + TableID + "_tableFix").css("width",(headWidth+5)*FixColumnNumber);
        $("#" + TableID + "_tableFix").css("height",headHeight);
        
        $("#" + TableID + "_tableHead").css("width",width);
        $("#" + TableID + "_tableHead").css("height",headHeight);
        $("#" + TableID + "_tableHead").css("top",headHeight*-1);
    
        $("#" + TableID + "_tableColumn").css("width",headWidth);
        $("#" + TableID + "_tableColumn").css("height",height-17+headHeight);
        $("#" + TableID + "_tableColumn").css("top",(headHeight*2*-1));
        
        $("#" + TableID + "_tableData").css("width",width);
        $("#" + TableID + "_tableData").css("height",height);
        $("#" + TableID + "_tableData").css("top",(headHeight*2+(height-17))*-1);
    
        $("#" + TableID + "_tableData").scroll(function () {
            $("#" + TableID + "_tableHead").scrollLeft($("#" + TableID + "_tableData").scrollLeft());
            $("#" + TableID + "_tableColumn").scrollTop($("#" + TableID + "_tableData").scrollTop());
        });
    }
    </SCRIPT>
    </HEAD>
    <BODY style="margin:0">
    <!-- 总体div,用来限制总体datagird的宽度和高度使用 -->
    <DIV style="OVERFLOW: hidden" id='MyTable_tableLayout'>
    <!-- 左右列锁DIV,用来放列锁的列(没列锁的不需要在这里写) -->
    <DIV style="WIDTH: 85px; HEIGHT: 20px;" class="tableFix" id='MyTable_tableFix'>
    <TABLE style="2205;" border='0' cellSpacing='0' cellPadding='0'>
    <THEAD>
    <TR>
    <TH width="2"></TH>        
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="35" background="image/jk8-1122.png" class="sa"><input type="checkbox" id='selctAllCheckbox' onclick="doSelctAllCheckbox()"/></TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH >&nbsp;</TH>
    </TR>
    </THEAD>
    </table>
    </div>
    <!-- 表头DIV,用来表头的table(这里的表比MyTable_tableColumn要宽17是用来解决下面滚动的出现导致表头和数据的table上下没对齐的问题) -->
    <DIV style="WIDTH: 583px; HEIGHT: 20px;" class="tableHead" id='MyTable_tableHead'>
    <TABLE style="2217;" border='0' cellSpacing='0' cellPadding='0'>
    <THEAD>
    <TR>
    <TH width="2"></TH>        
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="35" background="image/jk8-1122.png" class="sa">&nbsp;</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="45" background="image/jk8-1122.png" class="sa">客户名</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="45" background="image/jk8-1122.png" class="sa">区域</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="70" background="image/jk8-1122.png" class="sa">商圈</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="70" background="image/jk8-1122.png" class="sa">业态</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="70" background="image/jk8-1122.png" class="sa">新品比例</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="80" background="image/jk8-1122.png" class="sa">顺销品牌比例</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="80" background="image/jk8-1122.png" class="sa">双低品牌比例</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="80" background="image/jk8-1122.png" class="sa">责任品牌比例</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="80" background="image/jk8-1122.png" class="sa">阶段性培育</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="80" background="image/jk8-1122.png" class="sa">店铺面积</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="80" background="image/jk8-1122.png" class="sa">经营卷烟面积</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="80" background="image/jk8-1122.png" class="sa">新品接受度</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="80" background="image/jk8-1122.png" class="sa">沟通行为特征</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="80" background="image/jk8-1122.png" class="sa">进货量</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="80" background="image/jk8-1122.png" class="sa">进货额</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="80" background="image/jk8-1122.png" class="sa">毛利</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="80" background="image/jk8-1122.png" class="sa">销售增长率</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="80" background="image/jk8-1122.png" class="sa">月均条均价</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="80" background="image/jk8-1122.png" class="sa">市场状态</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="80" background="image/jk8-1122.png" class="sa">诚信经营</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="80" background="image/jk8-1122.png" class="sa">明码标价</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="80" background="image/jk8-1122.png" class="sa">订货方式</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="80" background="image/jk8-1122.png" class="sa">徽映e家系统</TH>
    <TH width="5" background="image/jk8-13-1.png"></TH>
    <TH width="4"></TH>
    <TH width="5"  background="image/jk8-12-1.png" height="30"></TH>
    <TH width="80" background="image/jk8-1122.png" class="sa">优质终端</TH>
    <TH width="24" background="image/jk8-13-1.png"></TH>
    </TR>
    </TR>
    </THEAD>
    </TABLE>
    </DIV>
    <!-- 上下列锁DIV,用来放列锁的列(没列锁的不需要在这里写) -->
    <DIV style="WIDTH: 85px; HEIGHT: 383px;" class="tableColumn" id='MyTable_tableColumn'>
    <TABLE width="100%" border='0' cellSpacing='0' cellPadding='0'>
        <TR>
        <TD width="2" bgcolor="#d4d6cf"></TD>
        <TD width="45" height="30"></TD>
        </tr>
    </TABLE>
    <TABLE width="100%" border='0' cellSpacing='0' cellPadding='0'>
        <TR>
        <TD height="2" colspan="2" bgcolor="#d4d6cf"></TD>
        </tr>
    </TABLE>
    <TABLE border='0' cellSpacing='0' cellPadding='0'>
    <TBODY><!-- 数据行 -->
    <TR align="center">
    <TD width="2" bgcolor="#d4d6cf"></TD>
    <TD height="30" width="45"><input type='checkbox'/></TD>
    </TR>
    <TR align="center" bgcolor="#f4f2f2">
    <TD width="2" bgcolor="#d4d6cf"></TD>
    <TD height="30" width="45"><input type='checkbox'/></TD>
    </TR> 
    <TR align="center">
    <TD width="2" bgcolor="#d4d6cf"></TD>
    <TD height="30" width="45"><input type='checkbox'/></TD>
    </TR>
    <TR align="center" bgcolor="#f4f2f2">
    <TD width="2" bgcolor="#d4d6cf"></TD>
    <TD height="30" width="45"><input type='checkbox'/></TD>
    </TR>
    <TR align="center">
    <TD width="2" bgcolor="#d4d6cf"></TD>
    <TD height="30" width="45"><input type='checkbox'/></TD>
    </TR>
    <TR align="center" bgcolor="#f4f2f2">
    <TD width="2" bgcolor="#d4d6cf"></TD>
    <TD height="30" width="45"><input type='checkbox'/></TD>
    </TR>
    <TR align="center">
    <TD width="2" bgcolor="#d4d6cf"></TD>
    <TD height="30" width="45"><input type='checkbox'/></TD>
    </TR>
    <TR align="center" bgcolor="#f4f2f2">
    <TD width="2" bgcolor="#d4d6cf"></TD>
    <TD height="30" width="45"><input type='checkbox'/></TD>
    </TR>
    <TR align="center">
    <TD width="2" bgcolor="#d4d6cf"></TD>
    <TD height="30" width="45"><input type='checkbox'/></TD>
    </TR>
    <TR align="center" bgcolor="#f4f2f2">
    <TD width="2" bgcolor="#d4d6cf"></TD>
    <TD height="30" width="45"><input type='checkbox'/></TD>
    </TR>
    </TBODY>
    </TABLE>
    </DIV>
    <!-- 真正的数据表格DIV,跟普通的table没区别 -->
    <DIV style="WIDTH: 600px; HEIGHT: 400px;" class="tableData" id='MyTable_tableData'>
    <DIV>
        <TABLE style="2205;" border='0' cellSpacing='0' cellPadding='0'>
            <tr><td height="2" colspan="2" bgcolor="#d4d6cf"></td></tr>
        </TABLE>
    </DIV>
    <DIV>
    <TABLE style="2205;" id='MyTable' border='0' cellSpacing='0' cellPadding='0'>
    <TR align="center">
    <td width="2" height="30" bgcolor="#d4d6cf"></td>
    <td width="45" colspan="3" height="30">&nbsp;</td>
    <td width="4" height="30"></td>    
    <td width="55" colspan="3" class="sa">客户名</td>
    <td width="4" height="30"></td>    
    <td width="55" colspan="3" class="sa">区域</td>
    <td width="4" height="30"></td>    
    <td width="80" colspan="3" class="sa">商圈</td>
    <td width="4" height="30"></td>    
    <td width="80" colspan="3" class="sa">业态</td>
    <td width="4" height="30"></td>    
    <td width="80" colspan="3" class="sa">新品比例</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">顺销品牌比例</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">双低品牌比例</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">责任品牌比例</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">阶段性培育</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">店铺面积</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">经营卷烟面积</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">新品接受度</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">沟通行为特征</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">进货量</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">进货额</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">毛利</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">销售增长率</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">月均条均价</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">市场状态</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">诚信经营</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">明码标价</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">订货方式</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">徽映e家系统</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">优质终端</td>
    <td width="2" height="30" ></td>
    </TR>
    <TR align="center" bgcolor="#f4f2f2">
    <td width="2" height="30" bgcolor="#d4d6cf"></td>
    <td width="45" colspan="3" height="30">&nbsp;</td>
    <td width="4" height="30"></td>    
    <td width="55" colspan="3" class="sa">客户名</td>
    <td width="4" height="30"></td>    
    <td width="55" colspan="3" class="sa">区域</td>
    <td width="4" height="30"></td>    
    <td width="80" colspan="3" class="sa">商圈</td>
    <td width="4" height="30"></td>    
    <td width="80" colspan="3" class="sa">业态</td>
    <td width="4" height="30"></td>    
    <td width="80" colspan="3" class="sa">新品比例</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">顺销品牌比例</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">双低品牌比例</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">责任品牌比例</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">阶段性培育</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">店铺面积</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">经营卷烟面积</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">新品接受度</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">沟通行为特征</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">进货量</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">进货额</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">毛利</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">销售增长率</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">月均条均价</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">市场状态</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">诚信经营</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">明码标价</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">订货方式</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">徽映e家系统</td>
    <td width="4" height="30"></td>    
    <td width="90" colspan="3" class="sa">优质终端</td>
    <td width="2" height="30"></td>
    </TR>
    </TABLE>
    </DIV>
    </DIV>
    </DIV>
    <a href="http://www.cnblogs.com/yangzhilong/p/3340130.html">转载请注明出处:http://www.cnblogs.com/yangzhilong/p/3340130.html</a>
    <a href="http://www.cnblogs.com/sorex/archive/2011/06/30/2093499.html">参考出处:http://www.cnblogs.com/sorex/archive/2011/06/30/2093499.html</a>


    </
    BODY>

    参考Bolg:http://www.cnblogs.com/sorex/archive/2011/06/30/2093499.html

  • 相关阅读:
    数据结构与算法----双向链表
    数据结构与算法----数学应用之一元多项式
    数据结构----线性表顺序和链式结构的使用(c)
    Android--Otto事件总线 -- 组件之间通讯框架使用 --模式解析
    递归 —— 二分查找法 —— 归并排序
    自己做悬浮拖拽按钮依赖
    RePlugin 插件化-内置加载
    Android图片处理--缩放
    数据结构与算法---常用三大排序算法
    Android图片处理--全景查看效果
  • 原文地址:https://www.cnblogs.com/yangzhilong/p/3340130.html
Copyright © 2020-2023  润新知