单击该行时,将选定的类添加到表行

时间:2013-06-24 11:40:08

标签: php javascript jquery html

我有桌子

<table width="100%" border="0" cellspacing="0" cellpadding="0" class="activity_tab">
    <tr id="list_1">
        <td><span class="new_act">Folder files Created</span>
        </td>
        <td>2013-06-24 02:11 am</td>
    </tr>
    <tr id="list_2">
        <td><span class="new_act">Folder ss Created</span>
        </td>`enter code here`
        <td>2013-06-24 02:11 am</td>
    </tr>

及其动态表数据在运行时出现,当我点击一行时我想将所选类添加到该行。 之后我在页面顶部有超链接

 <li><a href="javascript:void(0);" class="delete">Delete</a></li>

这是我的超链接 现在,当点击超链接时,所选行将被删除我如何获得所选行,并且我完全了解它的删除 但是找不到任何解决方案......

4 个答案:

答案 0 :(得分:3)

你可以这样做 -

$('.activity_tab tr').on('click',function(){
  $(this).addClass('selected');
});
$('.delete').on('click',function(){
   $('tr.selected').remove();
});

答案 1 :(得分:2)

我会在所选行上添加一个类。我假设您一次只能选择一行,因此在单击新行时您需要删除任何选择。

由于您的表是动态的,因此您需要使用委派的事件侦听器来添加所选的类。有关委派事件的详细信息,请参阅jQuery's on() method的文档。

$(document).on('click', 'tr', function(e) {
    $('tr.selected').removeClass('selected'); //clear other selections
    $(this).addClass('selected'); //mark this row as selected
});

$('a.delete').on('click', function(e){
   e.preventDefault(); //stop native link behavior
   $('tr.selected').remove(); //remove selected row
});

请注意,将selected类添加到行的侦听器将影响文档中的任何tr元素。如果页面上有其他表格,则需要使第二个选择器(在“点击”之后)更具体。

答案 2 :(得分:1)

你可以试试这个

$(function(){
    $(".activity_tab tr").click(function(){
        $(this).addClass("red");
    });

    $('.delete').on('click',function(){
       $('tr.red').remove();
    });
});

演示:http://jsfiddle.net/YNNVr/

答案 3 :(得分:0)

您可以点击以下代码将selected课程添加到tr

$('.activity_tab').on('click', 'tr', function(){
   $(this).addClass('selected');
});

如果您想更进一步,可以使用toggleClass代替addClass,这样您只需再次点击{{1}即可删除selected课程}}

然后,您可以选择所有tr行并将其删除

selected

这将删除表中$('.delete').on('click', function(){ $('activity_tab .selected').remove(); }); 类的selected类的所有行。