根据值隐藏表行

时间:2009-06-10 10:47:49

标签: jquery

我没有找到正确的表达式来选择必须根据用户点击的单元格的值隐藏的表行。我有几行与此相似:

<tr id='row2'>
<td class='col1'>val 1</td>
<td class='col2'>Val 2</td>
<td class='col3'>val 3</td>
<td class='col4'>Val 4</td>
<td class='col5'>Val 5</td>
<td class='col6'>Val 6</td>
<td class='col7'>Val 7</td></tr>

并且不同的行可以在同一列上具有相同的值。当用户点击我希望隐藏的单元格时()所有具有与所选单元格不同的值的单元格。

我已经绑定了我的点击事件,并且在例程中我已经获得了列的类ID(比如说:'col 4')点击了单元格的值(比方说:'val 4')。我希望有类似的东西:

$('tr').not(...some expression...).contains('val 4').hide()

会节省一天我无法确定正确的表达方式。

有一些提示吗?

由于

2 个答案:

答案 0 :(得分:0)

试试这个:

$("td").click(function() {
    column = 1 + $(this).prevAll().size(); // gets column number
    text = $(this).html();
    $("td.col" + column).not(":contains('"+text+"')").parent().hide();
});

答案 1 :(得分:0)

你的问题有点令人困惑。我正在考虑将click事件绑定到各个单元格[td]。

//“this”是单元格(td),因为它在绑定事件中。

$(this).is(':contains(“Val 4”)')? $(this).parent()。hide():return;