jQuery Asp.Net datagrid 表頭固定 表內容滾動代碼實現

來源:互聯網
上載者:User
//整體思路還是老樣子:在前面插入一個新table,裡面只有表頭,然後設定資料表格的高度使其滾動即可。
//由於table的表頭的寬度會根據內容或者下面行的內容改變,所以我們需要用的col標記來固定他的寬度,格式如:<col width='200px'></col>
//方法調用:直接傳進去表格的id和想要滾動的高度就可以了jQuery.fn.outerHTML = function (s) {    return s            ? this.before(s).remove()            : jQuery("<p>").append(this.eq(0).clone()).html();};//這個是擷取元素的全部html,下面複製表頭的時候要用到,因為複製表頭的時候需要把樣式也複製過去(如果裡面沒任何樣式就免了。。)function fixHeader(tableID,height) {    var table = $("#" + tableID);    var headers = table.find("th").length > 0                ? table.find("th")                : table.find("tr:first");    var colHTML = "";    //最後一個col不用管,讓它自己去適應    for (var i = 0; i < headers.find("td").length - 1; i++) {        colHTML += "<col width = '" + headers.find("td:eq(" + i + ")").width() + "'></col>";    }    //插入表頭    table.before("<table class='thead'>" + colHTML + "<tbody>" + headers.outerHTML() + "</tbody></table>");    //重設表頭的寬度    $(".thead").width(table.width());    //原表中插入col標記    table.find("tbody").before(colHTML);       table.css("display", "block").height(height).css("overflowY", "scroll");        if ($.browser.msie) {        //IE下表格不能通過設定表格高度來實現滾動        table.wrap("<div class='tablewrap'></div>");                //$(".tablewrap").width(table.width();        $(".tablewrap").height(height).css("overflowY", "auto").css("overflowX", "hidden");           }    //刪除第一行    headers.height(0).find("td").html("").height(0);}//自己寫的方法,,菜鳥作品,如果有Bug,還望指正。。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.