使用jQuery使用上一个元素复制和替换文本

时间:2018-07-22 08:34:15

标签: jquery

我想将每个表格正上方的 div.heading 移到其正下方的 span.date-span 中,代替日期。

__m256d

我正在使用以下代码,但是它将第一个标题复制并替换为所有.date-span。我认为这就像添加.prev()一样容易,但是我似乎无法正常工作。

<div class="heading"><a href="#">Film number one</a></div>
<table class="table">
<tr class="tablerow">
<td class="tablecell">
<span class="date-span">Fri 18 Jun</span>
</td>
</tr>
</table>

<div class="heading"><a href="#">Film number two</a></div>
<table class="table">
<tr class="tablerow">
<td class="tablecell">
<span class="date-span">Sat 19 Jun</span>
</td>
</tr>
</table>

2 个答案:

答案 0 :(得分:1)

您可以使用此解决方案 获取每个跨度的父表,然后在此表之前获取元素以获取其html 并将其附加到跨度

$('.date-span').each(function(i, e) {
   $(this).html($(this).parents('table').prev().html());
 });

答案 1 :(得分:0)

您可以首先找到跨度日期元素,然后对其进行迭代以设置其父html文本

$('.span-date').each((index, element) => { var $element = $(element); $element.html($element.parents('.heading').html()); })