ligerui 表格合并

有前置条件判断:
jQuery.fn.rowspan1 = function (colname, condtioncolname, tableObj, colspan) {
    var colIdx; var condtionIdx;
    for (var i = 0, n = tableObj.columns.length; i < n; i++) {
        if (tableObj.columns[i]["columnname"] == colname) {
            colIdx = i < colspan ? 0 : i - colspan;
            break;
        }
    }
    for (var i = 0, n = tableObj.columns.length; i < n; i++) {
        if (tableObj.columns[i]["columnname"] == condtioncolname) {
            condtionIdx = i < colspan ? 0 : i - colspan;
            break;
        }
    }
    return this.each(function () {
        var that;
        var colthis, colthat;
        $('tr', this).each(function (row) {
            $('td:eq(' + condtionIdx + ')', this).filter(':visible').each(function (col) {
                if (that != null && $(this).html() == $(that).html()) {
                    console.info($(this).html() == $(that).html());
                    //rowspan = $(that).attr("rowSpan");
                    //if (rowspan == undefined) {
                    //    $(that).attr("rowSpan", 1);
                    //    rowspan = $(that).attr("rowSpan");
                    //}
                    //rowspan = Number(rowspan) + 1;
                    //$(that).attr("rowSpan", rowspan);
                    //$(this).hide();

                    colthis = $(this).parent().find('td:eq(' + colIdx + ')');
                    colthat = $(that).parent().find('td:eq(' + colIdx + ')');
                    console.info("html=" + colthis.html());
                    console.info("html1=" + colthat.html());
                    if (colthis.html() == colthat.html()) {
                        rowspan = colthat.attr("rowSpan");
                        if (rowspan == undefined) {
                            colthat.attr("rowSpan", 1);
                            rowspan = colthat.attr("rowSpan");
                        }
                        rowspan = Number(rowspan) + 1;
                        colthat.attr("rowSpan", rowspan);
                        colthis.hide();
                    }
                } else {
                    that = this;
                }
            });
        });
    });
} 
直接合并单元格,无前置条件判断:摘至网络
jQuery.fn.rowspan = function (colname, tableObj, colspan) {
    var colIdx;
    for (var i = 0, n = tableObj.columns.length; i < n; i++) {
        if (tableObj.columns[i]["columnname"] == colname) {
            colIdx = i < colspan ? 0 : i - colspan;
            break;
        }
    }
    return this.each(function () {
        var that;
        $('tr', this).each(function (row) {
            $('td:eq(' + colIdx + ')', this).filter(':visible').each(function (col) {
                if (that != null && $(this).html() == $(that).html()) {
                    rowspan = $(that).attr("rowSpan");
                    if (rowspan == undefined) {
                        $(that).attr("rowSpan", 1);
                        rowspan = $(that).attr("rowSpan");
                    }
                    rowspan = Number(rowspan) + 1;
                    $(that).attr("rowSpan", rowspan);
                    $(this).hide();
                } else {
                    that = this;
                }
            });
        });
    });
}



猜你喜欢

转载自blog.csdn.net/fuweiping/article/details/69666397