在jquery中的第5个td之后插入另一行

时间:2012-11-09 09:28:42

标签: jquery jquery-selectors

在OpenCart中,当我在更多数量的产品中显示折扣时,它以默认方式显示在一行中。但我试图改变外观并使它像这样

<div class="discount">
  <table>
    <tr>
      <?php foreach ($discounts as $discount) { ?>
        <td class="test">
          <?php echo sprintf($text_discount, $discount['quantity'], $discount['price']); ?>
        </td>
      <?php } ?>
    </tr>
  </table>
</div>

这里显示连续5折优惠。但是现在我想在第5个td之后插入另一行。我想在另一个tr中显示另外5个tds。那么有人可以帮助我在jQuery中如何做到这一点吗?

4 个答案:

答案 0 :(得分:2)

如果您只是想在最后一个之后添加另一个tr,那么这样做......

$("<tr />").insertAfter(".discount table tr:last")​​​​​​​​​​​​​​​​​​​​​​​​​;

它没有单元格,所以你需要添加它们,你可以这样做......

$("<tr><td/><td/><td/><td/><td/></tr>").insertAfter(".discount table tr:last")​​​​​​​​​​​​​​​​​​​​​​​​​

答案 1 :(得分:1)

$(".discount table tr td:eq(4)").after("<tr><td>.....</td></tr>");

尝试这样的事情

如果您想在第5 tr次之后插入td tr,请使用此

$(".discount table tr:eq(4)").after("<tr><td>.....</td></tr>");

答案 2 :(得分:0)

$(".discount table tr td:nth-child(5)").append("</tr><tr>");

答案 3 :(得分:0)

更容易在php

上连续5个结束
<div class="discount">
    <table>
         <?php for ($i = 0; $i < count($discounts); ) { ?>
              <tr>
                   <?php for ($j = 0; $j < 5 && $i < count($discounts); $j++, $i++) { ?>
                        <td class="test">
                            information
                        </td>
                   <?php } ?>
              </tr>
         <?php } ?>
    </table>
</div>