Javascript 如何使用jquery将表行转移到另一个表中?

Javascript 如何使用jquery将表行转移到另一个表中?,javascript,jquery,ruby-on-rails,Javascript,Jquery,Ruby On Rails,我有两个包含行的表。我有一个javascript函数,可以将一个表行移动到第二个表中。到目前为止,我的行添加是使用Jquery方法closest(“tr”)执行的。而且似乎只有当每个表至少有一行时,它才起作用。当任何一个表为空时,它就不工作了 代码,使行移动 $(arg).closest("tr").remove() html=$(arg).closest("tr") if(value){ complete = true; $('.completed-ta

我有两个包含行的表。我有一个javascript函数,可以将一个表行移动到第二个表中。到目前为止,我的行添加是使用Jquery方法
closest(“tr”)
执行的。而且似乎只有当每个表至少有一行时,它才起作用。当任何一个表为空时,它就不工作了

代码,使行移动

$(arg).closest("tr").remove()
html=$(arg).closest("tr")

 if(value){
         complete = true;
         $('.completed-tasks').last().after(html)
       }
       else{
         complete = false;
          $('.incompleted-tasks').first().after(html)
        }
这是第一个表的结构

  <h3>Completed</h3>
    <table class='table'>

     <% @tasks.complete.each do |task| %>
      <tr class='completed-tasks' id="task_<%= task.id %>">

        <td>
         .
         .
         .
        </td>

     </tr>
    <% end %>

</table>
已完成
.
.
.
第二个表:

<h3>Incompleted</h3>
  <table class='table'>

   <% @tasks.incomplete.each do |task| %>
    <tr class='incompleted-tasks' id="task_<%= task.id %>">

     <td>
      .
      .
      .
     </td>

    </tr>
  <% end %>

</table>
未完成
.
.
.

有什么帮助吗?

如果目标表为空,那么它不起作用的原因是您正在使用以下语句将行作为目标:

$('.completed-tasks').last().after(html)
如果没有,则在空集上的之后调用
,而没有地方放置内容

相反,要针对表:

$(".table").append(html);
或者理想情况下,在标记中,在表中添加一个
tbody
,并将其作为目标:

$(".table tbody").append(html);


旁注:我不会调用包含jQuery对象的变量,该对象中有
tr
元素
html
,这是误导。它不是HTML,而是一个对象。:-)

如果目标表为空,则它不起作用的原因是您使用以下语句将行作为目标:

$('.completed-tasks').last().after(html)
如果没有,则在空集上的
之后调用
,而没有地方放置内容

相反,要针对表:

$(".table").append(html);
或者理想情况下,在标记中,在表中添加一个
tbody
,并将其作为目标:

$(".table tbody").append(html);


旁注:我不会调用包含jQuery对象的变量,该对象中有
tr
元素
html
,这是误导。它不是HTML,而是一个对象。:-)

根据您的代码,首先从第一个表中删除该行,然后再将其复制到另一个表中。你应该改为

html=$(arg).closest("tr")
$(arg).closest("tr").remove()

按照您的代码,首先要从第一个表中删除该行,然后才将其复制到另一个表中。你应该改为

html=$(arg).closest("tr")
$(arg).closest("tr").remove()

它没有改变任何东西它没有改变任何东西OK,但是我如何区分这两个表呢?我可以在tbody中输入一个类吗?@billyogan:当然可以,或者在每个表上输入一个单独的类,然后像上面那样输入一个选择器。好的,但是我如何区分这两个表呢?我可以在tbody中输入一个类吗?@billyogan:当然可以,或者在每个表上输入一个单独的类,然后像上面那样输入一个选择器。