美文网首页
jquery固定table表头

jquery固定table表头

作者: xudong7930 | 来源:发表于2020-04-24 16:08 被阅读0次

在我们日常 大前端开发中,查看报表的时候,表格内容过长,这时候就可能会有需求:固定表头查看内容。 下面是解决办法

样式:

.tableBox table{width:100%}
.tableBox thead{width:100%;border-top:1px solid #c5d9f1;border-left:1px solid #c5d9f1}
.tableBox tbody td,.tableBox thead th{height:30px;line-height:30px;text-align:center;font-size:12px;color:#404040}
.tableBox thead th{background-color:#d8e5f4;border-bottom:1px solid #c5d9f1;border-right:1px solid #c5d9f1}
.tableBox tbody{border-left:1px solid #dcdddd}
.tableBox tbody td{border-bottom:1px solid #dcdddd;border-right:1px solid #dcdddd;background-color:#fff}
.tableBox tbody tr:nth-child(even) td{background-color:#f9f9f9}
.tableBox table td,.tableBox table th{vertical-align:middle}

html部分:

<div class="tableBox">
    <table id="tableid" border="0" cellspacing="0" cellpadding="0" style="position: absolute; top: 0px; left: 0px;">
        <thead>
            <tr>
                <th rowspan="2">省市</th>
                <th colspan="10">资产属性</th>
                <th colspan="6">营业状态</th>
                <th colspan="3">销售状态</th>
            </tr>
            <tr>
                <th>小计</th>
                <th>自建</th>
                <th>收购</th>
                <th>控股</th>
                <th>长租</th>
                <th>短租</th>
                <th>参股</th>
                <th>特许</th>
                <th>租赁</th>
                <th>全资</th>
                <th>小计</th>
                <th>初始状态</th>
                <th>正常营业</th>
                <th>临时关闭</th>
                <th>永久关闭</th>
                <th>组织机构调整</th>
                <th>小计</th>
                <th>有销量</th>
                <th>无销量</th>
            </tr>
        </thead>
        <tbody id="tbodyID">
            <tr>
                <td>合计</td>
                <td>1449</td>
                <td>460</td>
                <td>741</td>
                <td>7</td>
                <td>143</td>
                <td>97</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>1449</td>
                <td>30</td>
                <td>1238</td>
                <td>114</td>
                <td>54</td>
                <td>13</td>
                <td>1449</td>
                <td>1224</td>
                <td>225</td>
            </tr>
            <tr>
                <td>鞍山分公司</td>
                <td>118</td>
                <td>35</td>
                <td>61</td>
                <td>0</td>
                <td>19</td>
                <td>3</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>118</td>
                <td>0</td>
                <td>99</td>
                <td>11</td>
                <td>8</td>
                <td>0</td>
                <td>118</td>
                <td>97</td>
                <td>21</td>
            </tr>
            <tr>
                <td>盘锦分公司</td>
                <td>55</td>
                <td>13</td>
                <td>29</td>
                <td>1</td>
                <td>2</td>
                <td>10</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>55</td>
                <td>0</td>
                <td>39</td>
                <td>7</td>
                <td>9</td>
                <td>0</td>
                <td>55</td>
                <td>39</td>
                <td>16</td>
            </tr>
            <tr>
                <td>丹东分公司</td>
                <td>86</td>
                <td>38</td>
                <td>34</td>
                <td>0</td>
                <td>8</td>
                <td>6</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>86</td>
                <td>0</td>
                <td>73</td>
                <td>11</td>
                <td>2</td>
                <td>0</td>
                <td>86</td>
                <td>71</td>
                <td>15</td>
            </tr>
            <tr>
                <td>锦州分公司</td>
                <td>86</td>
                <td>27</td>
                <td>49</td>
                <td>0</td>
                <td>2</td>
                <td>8</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>86</td>
                <td>0</td>
                <td>76</td>
                <td>6</td>
                <td>2</td>
                <td>2</td>
                <td>86</td>
                <td>76</td>
                <td>10</td>
            </tr>
            <tr>
                <td>营口分公司</td>
                <td>117</td>
                <td>46</td>
                <td>50</td>
                <td>0</td>
                <td>14</td>
                <td>7</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>117</td>
                <td>1</td>
                <td>95</td>
                <td>9</td>
                <td>6</td>
                <td>6</td>
                <td>117</td>
                <td>95</td>
                <td>22</td>
            </tr>
            <tr>
                <td>阜新分公司</td>
                <td>86</td>
                <td>10</td>
                <td>66</td>
                <td>0</td>
                <td>5</td>
                <td>5</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>86</td>
                <td>0</td>
                <td>82</td>
                <td>4</td>
                <td>0</td>
                <td>0</td>
                <td>86</td>
                <td>82</td>
                <td>4</td>
            </tr>
            <tr>
                <td>辽阳分公司</td>
                <td>65</td>
                <td>17</td>
                <td>38</td>
                <td>0</td>
                <td>6</td>
                <td>4</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>65</td>
                <td>1</td>
                <td>53</td>
                <td>4</td>
                <td>7</td>
                <td>0</td>
                <td>65</td>
                <td>53</td>
                <td>12</td>
            </tr>
            <tr>
                <td>铁岭分公司</td>
                <td>82</td>
                <td>18</td>
                <td>61</td>
                <td>0</td>
                <td>1</td>
                <td>2</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>82</td>
                <td>0</td>
                <td>77</td>
                <td>4</td>
                <td>1</td>
                <td>0</td>
                <td>82</td>
                <td>77</td>
                <td>5</td>
            </tr>
            <tr>
                <td>朝阳分公司</td>
                <td>64</td>
                <td>22</td>
                <td>25</td>
                <td>1</td>
                <td>16</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>64</td>
                <td>0</td>
                <td>58</td>
                <td>4</td>
                <td>2</td>
                <td>0</td>
                <td>64</td>
                <td>57</td>
                <td>7</td>
            </tr>
            <tr>
                <td>葫芦岛分公司</td>
                <td>62</td>
                <td>22</td>
                <td>35</td>
                <td>0</td>
                <td>0</td>
                <td>5</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>62</td>
                <td>0</td>
                <td>55</td>
                <td>7</td>
                <td>0</td>
                <td>0</td>
                <td>62</td>
                <td>54</td>
                <td>8</td>
            </tr>
            <tr>
                <td>润滑油分公司</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
            </tr>
            <tr>
                <td>沈阳分公司</td>
                <td>193</td>
                <td>59</td>
                <td>65</td>
                <td>5</td>
                <td>31</td>
                <td>33</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>193</td>
                <td>0</td>
                <td>157</td>
                <td>21</td>
                <td>15</td>
                <td>0</td>
                <td>193</td>
                <td>154</td>
                <td>39</td>
            </tr>
            <tr>
                <td>大连分公司</td>
                <td>314</td>
                <td>110</td>
                <td>156</td>
                <td>0</td>
                <td>36</td>
                <td>11</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>314</td>
                <td>28</td>
                <td>263</td>
                <td>18</td>
                <td>0</td>
                <td>5</td>
                <td>314</td>
                <td>258</td>
                <td>56</td>
            </tr>
            <tr>
                <td>本溪分公司</td>
                <td>52</td>
                <td>20</td>
                <td>29</td>
                <td>0</td>
                <td>3</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>52</td>
                <td>0</td>
                <td>46</td>
                <td>6</td>
                <td>0</td>
                <td>0</td>
                <td>52</td>
                <td>46</td>
                <td>6</td>
            </tr>
            <tr>
                <td>抚顺分公司</td>
                <td>69</td>
                <td>23</td>
                <td>43</td>
                <td>0</td>
                <td>0</td>
                <td>3</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>0</td>
                <td>69</td>
                <td>0</td>
                <td>65</td>
                <td>2</td>
                <td>2</td>
                <td>0</td>
                <td>69</td>
                <td>65</td>
                <td>4</td>
            </tr>
        </tbody>
    </table>
</div>

js部分:

// 滑动滚动条
tableHeader()

function tableHeader() {
    $("#tableid").parent().prepend(
        '<table id="tableid_" border="0" cellspacing="0" cellpadding="0"><thead>' + $("#tableid thead").html() + '</thead></table>'
    ).css({
        'position': 'relative',
        'height': '300px',
        'overflow-y': 'auto'
    })
    $("#tableid_").find('th').each(function(i) {
        $(this).css('width', $('#tableid').find('th:eq(' + i + ')').width());
    });
    $("#tableid_").css({
        'position': 'absolute',
        'top': '0',
        'left': 0,
        'z-index': 2
    })
    $("#tableid").css({
        'position': 'absolute',
        'top': 0,
        'left': 0
    })
    $('.tableBox').scroll(function() {
        if ($('.tableBox').scrollTop() > 0) {
            $("#tableid_").css('top', $('.tableBox').scrollTop());
        } else {
            $("#tableid_").css('top', 0);
        }
    });
}

相关文章

  • jquery固定table表头

    在我们日常 大前端开发中,查看报表的时候,表格内容过长,这时候就可能会有需求:固定表头查看内容。 下面是解决办法 ...

  • JS/jQuery Table固定表头代码

  • table表头固定

    //jsp <%@ page language="java" import="java.util.*" pageE...

  • TABLE表头固定问题

    由于表格内容td是动态生成的,宽度不固定,所以通过定位的方式来实现表头固定会使表头脱离文档流,跟td内容不对齐,通...

  • table固定表头和列

    表格固定表头和列 背景 在项目中大多数的表格,都是使用ui库提供的表格,ui库提供的表格为我们封装了很多很实用的功...

  • 造轮子遇到的的技术难题

    table 做固定表头的技术难题 尝试用css解决,overflow: auto会使整个table滚动,考虑加在t...

  • ElementUi开发问题记录

    Table 表格固定表头却无法自适应高度 Message 消息提示--渲染页面后消失

  • 第八周学习笔记和总结

    这周用 jquery 写了个 geneTable 方法,只要传入表头和表内容数据,自动生动 table 的 htm...

  • 运用jQuery冻结table表头

    在网页中,如果表哥数据量在两个维度上都较大时是不便于查看数据的,如果能够像excel那样冻结表头将有助于提高数据查...

  • table实现表头固定,仅用css

    仅仅使用css实现的表头固定使用中会很受限制,但是如果要求不高使用起来也并没有什么大问题,主要是分别在两个div中...

网友评论

      本文标题:jquery固定table表头

      本文链接:https://www.haomeiwen.com/subject/xmmfwhtx.html