如何把gridview中相同行数据合并 例如
XX公司 张三 110 项目1
XX公司 张三 110 项目2
XX公司 张三 110 项目3
XX公司 李四 120 项目1
XX公司 李四 120 项目2
XX公司 李四 120 项目3
XX公司 跳跳 120 项目1
XX公司 跳跳 120 项目2
XX公司 跳跳 120 项目3
xx企业 王五 119 项目4
xx企业 王五 119 项目5
xx企业 王五 119 项目6
xx企业 赵六 118 项目4
xx企业 赵六 118 项目5
xx企业 赵六 118 项目6数据是用3表查询出来的如何实现出下面的格式
张三 110 项目1
XX公司  跳跳 120 项目2
         李四 120      项目3
王五 119 项目4
xx企业 赵六 118 项目5
         项目6

解决方案 »

  1.   

    如果用grideview,最好在服务器端合并,处理rowcreated、或RowDataBound事件
    客户端合并会有些麻烦<head>
        <title></title>    <script language="javascript">
            function SpanCollomn()
            {           
                
                var rows = document.getElementById("mytable").childNodes;
                
                if (rows[0].nodeName == "TBODY")
                    rows = rows[0].childNodes;
                else if (rows[1] && rows[1].nodeName == "TBODY")
                    rows = rows[1].childNodes;            var fcell;
                for (var i = 0; i < rows.length; i++)
                {
                    if (rows[i].children)
                    {
                        var currentCell = rows[i].children[0];                    if (fcell && fcell.innerText == currentCell.innerText)//当前行的内容与上一行相同.FF下不支持innerText
                        {
                            // fcell.setAttribute("rowspan", fcell.rowspan + 1); //上一行跨行加1
                            fcell.rowSpan = fcell.rowSpan + 1;
                            rows[i].removeChild(currentCell); //当前行移除内容相同的列
                            //rows.appendChild(fcell);
                        }
                        else
                        {
                            fcell = currentCell;
                        }
                    }
                }
            }
        </script></head>
    <body>
        <table id="mytable" align="center" border="1">
            <tr>
                <td id="1">
                    XX公司
                </td>
                <td>
                    张三
                </td>
                <td>
                    项目1
                </td>
            </tr>
            <tr>
                <td id="2">
                    XX公司
                </td>
                <td>
                    张三
                </td>
                <td>
                    项目二
                </td>
            </tr>
            <tr>
                <td  id="3">
                    XX公司
                </td>
                <td>
                    李四
                </td>
                <td>
                    项目三
                </td>
            </tr>
            <tr>
                <td  id="4">
                    XX公司
                </td>
                <td>
                    王五
                </td>
                <td>
                    项目四
                </td>
            </tr>
            <tr>
                <td id="5">
                    YY公司
                </td>
                <td>
                    赵六
                </td>
                <td>
                    项目一
                </td>
            </tr>
            <tr>
                <td id="6">
                    YY公司
                </td>
                <td>
                    赵六
                </td>
                <td>
                    项目二
                </td>
            </tr>
        </table>
        <input id="Button1" type="button" value="合并" onclick="SpanCollomn();" /></p>
    </body>合并了第一列,ie8和chrome没有问题。