jQuery .text内容从一个表格单元格到另一个表格单元格

时间:2016-01-24 15:26:52

标签: jquery html

我有一些行的动态表。我尝试获取" .tags" -td-content并将其写入每行的" .tagsNew" -td。

  <tr>
     <td class="td1">
        Date 1
     </td>
     <td class="td2">
        Text 1
        <div class="tags"><a href="http://home1.com">Row_1_Tag</a></div>
     </td>
     <td class="tagsNew">
     </td>
  </tr>

  <tr>
     <td class="td1">
        Date 2
     </td>
     <td class="td2">
        Text 2
        <div class="tags"><a href="http://home2.com">Row_2_Tag</a></div>
     </td>
     <td class="tagsNew">
     </td>
  </tr>

  <tr>
     <td class="td1">
        Date 3
     </td>
     <td class="td2">
        Text 3
        <div class="tags"><a href="http://home3.com">Row_3_Tag</a></div>
     </td>
     <td class="tagsNew">
     </td>
  </tr>

  ...

期望的结果:

  <tr>
     <td class="td1">
        Date 1
     </td>
     <td class="td2">
        Text 2
        <div class="tags"><a href="http://home1.com">Row_1_Tag</a></div>
     </td>
     <td class="tagsNew">
         Row_1_Tag   /* needed */
     </td>
  </tr>

  <tr>
     <td class="td1">
        Date 2
     </td>
     <td class="td2">
        Text 2
        <div class="tags"><a href="http://home2.com">Row_2_Tag</a></div>
     </td>
     <td class="tagsNew">
         Row_2_Tag   /* needed */
     </td>
  </tr>

  ...

这是我的剧本:

<script>

function getTag(){

    row = $("tr");
    tagNeeded = $('tr .tags').text()

    $.each(row, function() {
        $('.tagsNew').text(tagNeeded);  
    });
}

</script> 

代码有效,但我只需要特定行的.tags内容。 该函数将所有行的内容粘贴到.tagsNew表格单元格

以上代码

会发生这种情况
<!-- Result with function getTag() -->
  <tr>
     <td class="td1">
        Date 1
     </td>
     <td class="td2">
        Text 1
        <div class="tags"><a href="http://home1.com">Row_1_Tag</a></div>
     </td>
     <td class="tagsNew">
         Row_1_Tag Row_2_Tag Row_3_Tag
     </td>
  </tr>

任何帮助将不胜感激

2 个答案:

答案 0 :(得分:2)

您可以使用它来设置相关的特定文字:

$('.tagsNew').text(function(){
    return $(this).closest('tr').find('.tags').text();
});

答案 1 :(得分:1)

试试这个:

$('.tags').each(function() {
  $this = $(this);
  $this.closest('td').next().text($this.text());
});

请注意,这与您当前的完全结构严格相关:它不适合一般使用。