动态添加后突出显示表行

时间:2013-02-04 13:33:19

标签: jquery

看看如何在用jquery动态添加表格行之后突出显示表格行 我的代码似乎是添加行没有问题,但它没有突出显示正确的行

jquery的

$('#opponents tr:last').after('<tr><td>data</td><td>more data</td></tr>').effect("highlight", {}, 3000);

HAML /表

%table.twelve#opponents
      %thead
        %tr
          %th Name
          %th Manager
      %tbody
        - @opponents.each do |opponent|
          %tr
            %td= opponent.name
            %td.span1
              - if can? :update, @opponent
                .btn-group
                  %button.btn.dropdown-toggle{"data-toggle" => "dropdown"}
                    %i.icon-pencil
                    Manage
                    %span.caret
                  %ul.dropdown-menu
                    %li= link_to "Edit #{opponent.name}", "#modalOpponent"
                    -if can? :manage, @opponent
                      %li.divider
                      %li= link_to "Delete #{opponent.name}", opponent, :method => :delete, :remote => :true, :confirm => true

2 个答案:

答案 0 :(得分:5)

我认为效果会应用于tr:last,因为它是主要的选择器。

after()从原始选择器$('#opponents tr:last')返回jQuery对象,允许您继续链接到该主选择器。


DEMO - 使用现有代码,突出显示错误的行


尝试将新行分隔为自己的行并直接将效果应用于它。与此类似:

var $newRow = $('<tr><td>data</td><td>more data</td></tr>');

$('#opponents tr:last').after($newRow);
$newRow.effect("highlight", {}, 3000);

DEMO - 上述代码的工作DEMO


答案 1 :(得分:0)

您必须在以下效果中添加css:

$('#opponents tr:last').after('<tr><td>data</td><td>more data</td></tr>').effect("highlight", {color:'#ff0000'}, 3000);