使用Js 合並表單元格


最近,在做一個項目的時候,需要合並GridView的單元格,讓相同的數據顯示成一行,公司里一位大哥寫的,貼出來給給位看看,公司的代碼拿不出來的,就看懂后,自己寫出來的哈。

其中,tabObj代表表的Id,即GridView的Id,cellIndex代表合並第幾列,beignRow 代表從幾行開始,通常使用1,因為0是表頭哈。

js代碼如下:

function SpanGrid(tabObj, cellindex, beginRow) {
    var colIndex = cellindex;
    var rowBeginIndex = beginRow;
    if (tabObj != null) {
        var i, j, m;

        var intSpan;
        var strTemp;
        m = 0;
        for (i = rowBeginIndex; i < tabObj.rows.length; i++) {
            intSpan = 1;
            m++;
            strTemp = tabObj.rows[i].cells[colIndex].innerText;
            for (j = i + 1; j < tabObj.rows.length; j++) {
                if (strTemp == tabObj.rows[j].cells[colIndex].innerText) {
                    intSpan++;
                    tabObj.rows[i].cells[colIndex].rowSpan = intSpan;
                    tabObj.rows[j].cells[colIndex].style.display = "none";
                }
                else {
                    break;
                }
            }

        }
        i = j - 1;
    }
}

 

當然,這個Js代碼還有點小問題,就是只能合並一列,不能夠同時合並多列,希望某位仁兄改進,使之能夠同時合並多列。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM