对于X类的每个跨度,在td之前的td中找到标签,并在X类的跨度之后插入标签

时间:2019-04-02 19:25:04

标签: javascript jquery

我想将标签移到最近的firebase.firestore().collection("some_name").add() / set()之后的每个td.donationField内。

html是硬代码,因此我无法手动移动内容,因此必须使用脚本来完成。

这是我尝试的操作,无法选择DOM

span.givingAmount.radioLabel
$('span.givingAmount.radioLabel').each(function(){
            $(this).closest('td').contents('label').insertAfter(this);
        });

1 个答案:

答案 0 :(得分:1)

我认为这可以根据您的需要进行迁移

$('.donationField label').each(function() {
  $(this).closest('td').next().append(this);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>

<table>
  <tr>
    <td class="donationField">
      <span class="vaTop" itemindex="26" amount="1000"><input id="2142_rdo_26_4" type="radio" name="givingLevels" value="rdo_26_4" onclick="rdo_OnClick(this);">
      
      <label for="2142_rdo_26_4"> Description goes here</label></span>
    </td>
    <td class="controlField">
      <span class="givingAmount radioLabel">$ 1,000.00 </span>
    </td>
  </tr>
  <tr>
    <td class="donationField">
      <span class="vaTop" itemindex="26" amount="1000"><input id="2142_rdo_26_4" type="radio" name="givingLevels" value="rdo_26_4" onclick="rdo_OnClick(this);"><label for="2142_rdo_26_4">2nd Description</label></span>
    </td>
    <td class="controlField">
      <span class="givingAmount radioLabel">$ 2,000.00 </span>
    </td>
  </tr>
</table>