做报表时要对生成的表格实现任意选中行和列,产生新的表格,现在基本上实现了选中行和列,但当选择到rowspan>1的跨越多行/列的行或列时会出现错误,选中行示意图如下:这两块高亮的区域是一行中的数据,现在选择行时无法将它们一起选中,并且获取的行索引有两个,现在想达到如下目的: 
   1.一起选中这两行
   2.只获取到一个行索引
哪位大虾比较精通的啊,跪求指点  

解决方案 »

  1.   

    好像挺麻烦的,我的思路是这样的:
        1.首先判断tr的第一个TD的Rowspan是否大于1,如果大于1就根据rowspan把tr后的tr一起选中,
        2.如果TD的Rowspan不存在,那么将此行的列数和表头的列数做比较,如果行的列数小于表头的列数,那么应该就存在rowspan,就往上查找到rowspan,这样就回到第一点上了...这样就能同时选中多行,说得简单,做起来麻烦一点..
      

  2.   

    其实你想要的就是选择多行是吧, 那就给每行添加一个click事件,单击后就给个背景, 就可以选择多行,不会你要做到再单击一次就取消背景也可以    <title></title>
        <script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script>
        <script>
            $(function () {
                $("table tr").click(function () {
                      $(this).css("background", "blue");
                });
            })    </script>
    </head>
    <body>
        <table  border="1px;">
            <tr><td>第1</td><td>第1</td><td>第1</td><td>第1</td></tr>
            <tr><td>第2</td><td>第1</td><td>第1</td><td>第1</td></tr>
            <tr><td>第3</td><td>第1</td><td>第1</td><td>第1</td></tr>
            <tr><td>第4</td><td>第1</td><td>第1</td><td>第1</td></tr>    </table>
    </body>
      

  3.   

    可以类似于按照  思路是 声明二个 标记分别用来标识 所点击过的tr.index()不重复的数据 , 和重复点过的tr.index()   每点一次就往对应的 标记里面 一个添加,另外一个做删除,假设现在得出来的是 var showIndex=1,2,3  var hideIndex=4,5,6 
    最后做二个循环 分别显示1,2,3,被选中 4,5,6 被隐藏,下班了没时间 做demo了