使用jquery的列rowspan

时间:2016-11-13 07:48:32

标签: php jquery

我有一个表,每个行都有一个双击事件。当我双击任何一行时,它将显示另一行名为“.matching”。除此之外,如果显示隐藏的“.matching”行,我还想创建一个列rowspan。下面显示我的PHP部分:

recordHigh

这是我的jquery:

<table>
<tr ondblclick="rowdoubleclick(this);">
  <td>...</td>
  <td>...</td>
  <td class="lastcolumn">Rowspan is here</td>
</tr>
<tr class="matching" style="display:hidden;">
  <td colspan="2">Hidden row shows here</td>
</tr>
</table>

这段代码的问题,当我双击任何一行时,它会在另一行上创建rowspan。或者换句话说,它为表中的所有行创建所有rowspan。 如何将特定列行跨添加到该特定双击行事件?

1 个答案:

答案 0 :(得分:1)

试试这个,你应该找到点击行的最后一列

function rowdoubleclick(e) {
    var tablerow = $(e).closest('tr');
    // here you should find from clicked row and not from each row
    var rowammend = $(e).find('.lastcolumn'); 
    var matching = $(e).closest('tr').next('tr.matching'); 

    if(matching.is(":hidden")) { 
       tablerow.attr('rowspan','2').css({'border-bottom':'transparent'}); 
       matching.slideToggle("fast");
       rowammend.attr('rowspan','2');
    }
    else {
       tablerow.css({'border-bottom':'1px solid #939393'}); 
       matching.hide();
       rowammend.attr('rowspan','1');
    }
}